Methods and apparatuses to connect users of mobile devices to advertisers

ABSTRACT

Methods and apparatuses to connect a user of a telephony device to a selected one of service providers of a predefined category. One embodiment includes: providing a user interface element on a dial interface of a telephonic device to represent a communication reference associated with a pre-defined category of services; and responsive to a user selection of the user interface element, initiating a request from the telephonic device using the communication reference for a telephone connection to a service provider of the pre-defined category; where the service provider is to be selected from a plurality of service providers of the pre-defined category in response to the request and to be charged in response to a telephone lead connected to the service provider.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present patent application claims the priority to Provisional U.S.Patent Application Ser. No. 60/888,935, filed Feb. 8, 2007 and entitled“Methods and Apparatuses to Connect Users of Mobile Devices toAdvertisers.”

The present patent application is related to: copending U.S. patentapplication Ser. No. 11/077,655, filed Mar. 10, 2005 and claimedpriority from Provisional U.S. Patent Application 60/653,708 filed onFeb. 16, 2005, Provisional U.S. Patent Application Ser. No. 60/568,156filed on May 4, 2004, Provisional U.S. Patent Application Ser. No.60/560,926 filed on Apr. 9, 2004 and Provisional U.S. Patent ApplicationSer. No. 60/552,124 filed on Mar. 10, 2004; U.S. patent application Ser.No. 11/092,309, filed Mar. 28, 2005 and claimed priority fromProvisional U.S. Patent Application 60/653,660 filed on Feb. 16, 2005;and U.S. patent application Ser. No. 11/095,853, filed Mar. 30, 2005 andclaimed priority from Provisional U.S. Patent Application 60/653,661filed on Feb. 16, 2005. The parent patent application Ser. No.11/092,309 is also related to: U.S. patent application Ser. No.11/014,073, filed Dec. 15, 2004; U.S. patent application Ser. No.10/872,117, filed Jun. 17, 2004; and, U.S. patent application Ser. No.11/021,939, filed Dec. 23, 2004, which is a continuation in partapplication of U.S. patent application Ser. No. 10/679,982, filed Oct.6, 2003. The present application is also related to: copending U.S.patent application Ser. No. 11/274,453, filed Nov. 14, 2005 and claimedpriority from Provisional U.S. Patent application 60/721,793 filed Sep.28, 2005; U.S. patent application Ser. No. 11/505,225, filed Aug. 15,2006 and claimed priority from Provisional U.S. Patent application60/761,929 filed Jan. 24, 2006; and, U.S. patent application Ser. No.11/536,616, filed Sep. 28, 2006 and claimed priority from ProvisionalU.S. Patent Application 60/761,972 file Jan. 24, 2006.

The disclosures of the above referenced prior applications areincorporated herein by reference.

TECHNOLOGY FIELD

At least some embodiments of the disclosure relate to communicationconnections and advertising in general and performance-based advertisingin particular.

BACKGROUND

Telephone systems allow users to conduct real time two-way voicecommunication. Traditional land-line based telephone systems connect onetelephone set to another through one or more switching centers, operatedby one or more telephone companies, over a land-line based telephonenetwork. Traditionally, a telephone connection is based on a circuitswitched network.

Current telephone systems may also use a packet switched network for atelephone connection. A packet switched network is typical in a computerdata environment. Recent developments in the field of Voice overInternet Protocol (VoIP) allow the delivery of voice information usingthe Internet Protocol (IP), in which voice information is packaged in adigital form in discrete packets rather than in the traditionalcircuit-committed protocols of the public switched telephone network(PSTN).

Cellular networks allow a cellular phone to connect to a nearby cellularbase station through an air interface for wireless access to a telephonenetwork. Recent developments in wireless telephone systems allow notonly voice communications but also data communications. For example,cellular phones can now receive and send short messages through a ShortMessage Service (SMS). Web pages can now be retrieved through wirelesscellular links and displayed on cellular phones. Wireless ApplicationProtocol (WAP) has been developed to overcome the constraints ofrelatively slow and intermittent nature of wireless links to accessinformation similar or identical to World Wide Web.

Telephone companies provide a number of convenient features, such ascall forwarding. Call forwarding of a telephone system allows a user ofa phone at a given phone number to dial a specific sequence on the phoneto cause the telephone system to forward incoming calls addressed to thephone number to another specified phone number indicated by the dialedsequence.

Telephone systems are frequently used in conducting business. Telephonenumbers are typically provided in advertisements, web sites,directories, etc., as a type of contact information to reach businesses,experts, persons, etc.

The Internet is becoming an advertisement media to reach globallypopulated web users. Advertisements can be included in a web page thatis frequently visited by web users. Typically, the advertisementsincluded in the web pages contain only a limited amount of information(e.g., a small paragraph, an icon, etc.). The advertisements containlinks to the web sites that provide further detailed information. Incertain arrangements, the advertisers pay the advertisements based onthe number of visits directed to their web sites by the links of theadvertisements.

Performance based advertising generally refers to a type of advertisingin which an advertiser pays only for a measurable event that is a directresult of an advertisement being viewed by a consumer. For example, inone form of performance-based search advertising, an advertisement isincluded within a result page of a keyword search. Each selection(“click”) of the advertisement from the results page is the measurableevent for which the advertiser pays. In other words, payment by theadvertiser is on a per click basis in such advertising.

SUMMARY

Methods and apparatuses to connect a user of a telephony device to aselected one of service providers of a predefined category are describedhere. Some embodiments are summarized in this section.

One embodiment includes: providing a user interface element on a dialinterface of a telephonic device to represent a communication referenceassociated with a pre-defined category of services; and responsive to auser selection of the user interface element, initiating a request fromthe telephonic device using the communication reference for a telephoneconnection to a service provider of the pre-defined category; where theservice provider is to be selected from a plurality of service providersof the pre-defined category in response to the request and to be chargedin response to a telephone lead connected to the service provider.

The present disclosure includes methods and apparatuses which performthese methods, including data processing systems which perform thesemethods, and computer readable media which when executed on dataprocessing systems cause the systems to perform these methods.

Other features will be apparent from the accompanying drawings and fromthe detailed description which follows.

BRIEF DESCRIPTION OF THE DRAWINGS

The disclosure is illustrated by way of example and not limitation inthe figures of the accompanying drawings in which like referencesindicate similar elements.

FIG. 1 shows how clients and advertisers interact with each other usinga paid placement, or a paid inclusion advertising model, in accordancewith the prior art.

FIG. 2 shows an interaction between clients and advertisers, inaccordance with one embodiment of the present invention.

FIG. 3 shows a flowchart of operations performed in accordance with oneembodiment of the present invention.

FIG. 4 shows a high level functional description of a system inaccordance with one embodiment of the present invention.

FIG. 5 illustrates the Account Creation and Management module of thesystem, in greater detail.

FIG. 6 illustrates the Advertisement Publication Module of the system,in greater detail.

FIG. 7 illustrates the Call Handling Module of the system, in greaterdetail.

FIG. 8A shows an example of a user interface that may be presented to auser during advertisement creation, in accordance with one embodiment ofthe present invention.

FIG. 8B shows a campaign management interface that is presented to auser, in accordance with one embodiment.

FIG. 9 shows an example of a search engine result page, which includesan advertisement generated, in accordance with one embodiment of thepresent invention.

FIG. 10 shows an example of an email alert that is sent to anadvertiser, when a call is generated, in accordance with one embodimentof the invention.

FIG. 11 shows a high level hardware block diagram of a system that maybe used to implement the system, in accordance with one embodiment ofthe invention.

FIGS. 12-18 describe processes in accordance with embodiments of theinvention to track/credit demand partners.

FIG. 19 shows a diagram of a system to make and track phone connectionsaccording to one embodiment of the present invention.

FIG. 20 shows a diagram of a system to make offline selection ofadvertisers according to one embodiment of the present invention.

FIG. 21 shows a diagram of a telephone connection system for offlineselection of advertisers according to one embodiment of the presentinvention.

FIGS. 22-25 show flow diagrams of making and tracking phone connectionsaccording to embodiments of the present invention.

FIG. 26 shows a diagram of a system to make and track phone connectionsfrom a mobile device according to one embodiment of the presentinvention.

FIGS. 27-28 show flow diagrams of making and tracking phone connectionsaccording to embodiments of the present invention.

FIG. 29 illustrates a user interface for the creation of anadvertisement according to one embodiment of the present invention.

FIG. 30 illustrates a method to connect the user of a mobile device toan advertiser according to one embodiment of the present invention.

FIG. 31 illustrates a user interface which allows a user of the mobilephone to request a telephone connection to a service provider of aselected category according to one embodiment of the present invention.

FIG. 32 illustrates a user interface to guide a user through the processof connecting to a service provider according to one embodiment of thepresent invention.

FIG. 33 illustrates another method to guide a user through the processof connecting to a service provider according to one embodiment of thepresent invention.

FIG. 34 illustrates a method to determine a location of the desiredservice via a map before initiating a call to service provider accordingto one embodiment of the present invention.

FIG. 35 illustrates a display of favorites for accessing serviceproviders of selected categories according to one embodiment of thepresent invention.

FIGS. 36-37 show examples of editing preferences of favorites foraccessing service providers of selected categories according toembodiments of the present invention.

FIGS. 38-40 illustrates other user interfaces for accessing serviceproviders of selected categories according to embodiments of the presentinvention.

FIG. 41 illustrates a method to connect a user of a telephony device toa selected service provider of a predefined category according to oneembodiment of the present invention.

FIG. 42 shows a system including a connection server configured on apacket switched network according to one embodiment.

FIG. 43 shows a connection server according to one embodiment.

DETAILED DESCRIPTION

In the following description, for purposes of explanation, numerousspecific details are set forth in order to provide a thoroughunderstanding of the description. It will be apparent, however, to oneskilled in the art that the invention can be practiced without thesespecific details. In other instances, structures and devices are shownin block diagram form in order to avoid obscuring the description.

Reference in this specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment is included in at least one embodimentof the invention. The appearances of the phrase “in one embodiment” invarious places in the specification are not necessarily all referring tothe same embodiment, nor are separate or alternative embodimentsmutually exclusive of other embodiments. Moreover, various features aredescribed which may be exhibited by some embodiments and not by others.Similarly, various requirements are described which may be requirementsfor some embodiments but not other embodiments.

In the disclosure, the term “advertisement” may refer to variousdifferent forms of presentations to attract attention or patronage. Anadvertisement may be simply a listing of identity and contactinformation (e.g., in a web page, a print media, a telephonic listingservice, etc.), or a passage including one or more statements aboutbusiness offering, etc., or a banner with graphical content and/oranimation embedded in a web page, or a voice message presented in avoice channel (e.g., radio broadcasting, a voice portal with InteractiveVoice Response (IVR), which may accept user input through voicerecognition or through keypad input generated Dual Tone Multi-Frequency(DTMF) signals), or others.

FIG. 1 of the drawings illustrates how clients and advertisers interactwith each other in accordance with the paid placement, and paidinclusion advertising models of the prior art. Referring to FIG. 1, anumber of clients indicated by reference numeral 10 are coupled to awide area network (WAN) 14, such as the Internet via a communicationspath 12. Advertisers 16 are coupled to the WAN 14 via a communicationspath 18. The communications paths 12 and 18 may support the TCP/IPprotocols, in one embodiment. Each advertiser 16 has a web page 20 whichin accordance with the paid placement, and paid inclusion advertisingmodels described above, may be included in a results page of a key wordsearch initiated by a user of a client 10, which search is performed byan online search engine 19. Based on the paid placement, or the paidinclusion models, the web page 20 of an advertiser 16 is included withina results page compiled by the search engine 19 and sent via thecommunications path 12 to the client 10 that initiated the search, sothat the web page 20 may be selected or viewed by a user of the client10 that requested the search. As noted above, if an advertiser 16 doesnot have a web page 20, or does not have a web page 20 that is effectiveat capturing the value of a web visitor, then currently, such anadvertiser may not participate, or effectively participate, inperformance-based marketing such as paid placement, and paid inclusionprograms.

Further, the techniques disclosed herein are not limited to publishingor providing advertisements for the advertisers 16 through web pages.Thus, in alternative embodiments, the unique telephone number assignedto an advertiser may be published or provided using a directory withoutthe creation of a web page for the advertiser. The directory may be anexisting directory or a new directory. The placement or ranking of thetelephone number within the directory may be controlled through rankingtechniques described below.

Referring now to FIG. 2 of the drawings, a method for allowingadvertisers to participate in a pay per call advertising program,without requiring that the advertisers have a web presence, inaccordance with one embodiment, is illustrated. As will be seen, theclients 10 are coupled to the WAN 14 via the communications path 12, asbefore. However, the communications path between the advertisers 16 andthe WAN 14 is purely optional. In other words, the techniques of thepresent invention, allow an advertiser 16 to participate in aperformance-based advertising program without the requirement that theadvertiser 16 be coupled to the WAN 14 via the communications path 18.In fact, in accordance with the techniques disclosed herein, it is notnecessary that the advertisers 16 have web pages. Instead, in accordancewith the techniques disclosed herein, an alternative non-web basedcommunications path 22 is provided between the clients 10 and theadvertisers 16. According to embodiments of the present invention, thenon-web based communications path 22 may be provided by a conventionaltelephone network. Alternatively, the non-web based communications path22 may utilize Voice over Internet Protocol (VoIP) technology to couplea client through switches of the network 14, and switches of a publictelephone network, in a manner that does not require the advertisers 16to have a connection to the network 14. In addition, the advertisercould be notified via other media channels, such as email, chat, instantmessage, VoIP clients, etc.

FIG. 3 of the drawings illustrates a technique to establish the non-webbased communications path 22 of FIG. 2, in accordance with oneembodiment. Referring to FIG. 3, at block 26, a unique telephone numberis assigned to an advertiser 16. Thereafter, at block 28, anadvertisement associated with the advertiser 16 is provisioned orpublished on a publication or media channel on behalf of the advertiser.The advertisement includes either the unique telephone number, or areference to the unique telephone number. At block 30, telephone callsto the unique telephone number are monitored, as will be described. Atblock 32, the advertiser is charged based on the phone call activitythrough the assigned telephone number, as will be described.

FIG. 4 of the drawings shows a functional description of a system toimplement the method of FIG. 3. Referring to FIG. 4, the system includesaccount creation and management module 34, advertisement publicationmodule 36, call handling module 38, and billing module 40. Inalternative embodiments, additional, less, or different modules may beincluded in the system without departing from the invention.

The components of the account creation and management module 34, inaccordance with one embodiment, are shown in more detail in FIG. 5 ofthe drawings. Referring to FIG. 5, it will be seen that the accountcreation and management module 34 includes a user interface module 44,an advertisement creation module 46, and a payment specification module48. The user interface module 44 includes logic to present informationto a user, and to receive information from the user. For example, in oneembodiment, the user interface module 44 causes a web page such as theweb page 112 of FIG. 8 to be displayed on a browser of a client.

The advertisement creation module 46 includes text creation logic 50.The purpose of text creation logic 50 is to allow an advertiser 16, oran agent working on behalf of an advertiser 16, to input text for anadvertisement which is ultimately created by the advertisement creationmodule 46. In order to enhance understanding of the present invention,for the remainder of this description, a local business enterprisecalled “Burt's Plumbing” will be used as an example of an advertiserthat may benefit from the techniques disclosed herein. Burt's Plumbingmay or not have direct connectivity to the network 14. If Burt'sPlumbing does not have direct connectivity to the network 14, then arepresentative of Burt's Plumbing (hereinafter “Burt”) will have to gainaccess to a computer that does have connectivity to the network 14 inorder to view the web page 112 of FIG. 8A. For example, Burt could use acomputer of a friend, a computer at a local library, etc. In anotherembodiment, a search operator, an Internet yellow page provider or othertype of publisher could perform or administer this activity on behalf ofBurt. The text creation logic 50 allows Burt to input for e.g. the text“Burt's Plumbing in San Francisco. Check out our special deals,” whichwill be included in the advertisement when it is rendered. The module 46also includes key word association logic 57 that allows Burt to inputcertain key words which are then associated with Burt's advertisement.The idea here is that when one of the clients 10 initiates a searchthrough the search engine 19 using a key word that matches one of thekey words entered by Burt, then Burt's advertisement will be displayedwithin a result of the search. Since Burt's Plumbing is not a nationaloperation or enterprise it is necessary to display Burt's advertisementto clients within a certain geographic area. Thus, the module 46includes location determination logic 54 that builds a geographiclocation association to Burt's advertisement. In one embodiment, thelocation determination logic 54 allows Burt to select a particulargeographic location of interest, say for example San Francisco, so thatBurt's advertisement will be displayed to clients searching within theSan Francisco area.

In one embodiment, the module 46 also includes telephone number autogeneration logic 56 that automatically generates a unique telephonenumber, maps the unique telephone number to Burt's actual telephonenumber such that when the unique number is called, Bert's phone rings,and associates the unique phone number with Burt's advertisement. In oneembodiment, the telephone number is generated or selected from a pool ofnumbers at the time the advertisement is created; alternatively, thetelephone number is generated or selected at the time the advertisementis being requested for display. In one embodiment, the telephone numberthat is automatically generated, may be a toll free number. In oneembodiment, the telephone number may be a local number with the samearea code as Burt's actual telephone number. In one embodiment, thetelephone number may be an easily recognizable 800 number, modified by aunique extension mapped to Burt's business telephone number. Forexample, in one embodiment, a number could be the number“1-800-YEL-PAGES-1234.” The 1234 portion of the 800 number is the uniqueextension that is mapped to Burt's telephone number so that when asearcher calls the number 1 800 YEL PAGES-1234, the call will beautomatically routed to Burt's telephone as will be described in moredetail below.

In one embodiment, the telephone number (e.g., a traditional telephonenumber with or without an extension, or a VoIP-based telephonereference, such as a Session Initiation Protocol (SIP) address) isautomatically generated or selected at the time the advertisement isbeing requested for display. Alternatively, the telephone numberassigned to the advertiser is generated or selected at the time thesystem accepts the submission of the advertisement from the advertiser.Alternatively, the telephone number assigned to the advertiser isgenerated or selected at the time the advertisement is being activatedfor publication via the system.

In one embodiment, the advertisement creation module 46, automaticallyinserts the unique telephone number assigned to Burt directly intoBurt's advertisement. Alternatively, click to call logic 58 may beinvoked in order to generate a button, or a clickable telephone number,which is automatically inserted into Burt's advertisement, so that whenthe button or telephone number is selected or clicked by a useroperating a client 10, a telephone call is automatically initiated toBurt's telephone number.

The module 46 also includes on/off logic 60 that allows Burt toselectively turn on or turn off an advertisement. Alternatively, theturn on/off logic 60 allows Burt to assign an active or an inactivestatus to a particular advertisement. When an advertisement is turnedoff or flagged as inactive, it is considered withdrawn, at leasttemporarily, from an advertisement campaign, and is therefore notpublished e.g. through the search engine 19. Alternatively, onlyadvertisements that are turned on, or have a status of “active” arepublished in accordance with the techniques disclosed herein.

The module 46 includes smart connect logic 62 that allows automaticrouting of calls to various telephone numbers. For example, Burt mayinclude a primary telephone number, and one or more secondary telephonenumbers to be associated with his advertisement. Thus, in oneembodiment, the smart connect logic 62 first routes the call to Burt'sprimary telephone number, and if no connection is achieved, then triescyclically through Burt's list of secondary telephone numbers, until aconnection is achieved.

The module 46 also includes arrange a call logic 64 that allows asearcher to input a time at which the searcher wishes to speak to Burt.The system then contacts Burt in order to arrange the call with thesearcher. Burt may be contacted in a variety of ways, for example bysending a facsimile to Burt, by sending an email to Burt, by telephoningBurt, etc. to alert him of the arranged telephone call. In alternativeembodiments, additional, less, or different logic may be included in theadvertisement creation module without departing from the invention.

The payment specification module 48, allows Burt to select a particularmodel and various parameters associated with billing. The module 48includes flat fee logic 66 that presents an option to Burt through theuser interface module 44, which if selected will cause Burt to be billedon a flat fee basis for each telephone call received within a particularcategory, or subcategory, or keyword. The module 48 also includes bidfor placement logic 68, that, through the user interface module 44,presents an option to Burt to choose to be billed on a bid-for-placementbasis, as described above. The logic 68 supports proxy bids, andmaximum/minimum bids.

The module 48 also includes spending level logic 70 that allows Burt tospecify daily/weekly/monthly spending levels. The specified spendinglevel essentially defines a budget per time period such that if thebudget is exceeded within a particular time period, then Burt'sadvertisement will be automatically flagged as inactive or turned off,for the remainder of the time period. Burt is notified of this activityby the system and Burt is given the option of reactivating hisadvertisement by adding additional funds to his account. Alternatively,Burt may provide payment information (e.g., a credit card number or bankaccount) to the system such that the system can automatically transferadditional funds, when needed, to his account according to the paymentinformation.

In one embodiment, the billing module 40 includes logic to automaticallywaive charges for leads (calls) from searchers/customers who have calledBurt recently. For example, if a customer calls on one day, and thendials the same number for a follow-up call a day later, the systemautomatically waives the charge for the second call since this lead hasalready been paid for. Thus, the advertiser (Burt) does not have to beconcerned about a customer using the advertised telephone number morethan once and causing multiple charges. In one embodiment, the system ofthe present invention may be configured to waive the charges on leadsfrom customers who have already called a particular advertiser within aspecified number of days. In alternative embodiments, additional, less,or different logic may be included in the system.

Referring now to FIG. 6 of the drawings, the components of theadvertisement publication module 36, are shown in greater detail. Aswill be seen, the module 36 includes an advertisement engine 74, and anadvertisement syndication engine 76. The purpose of the advertisementengine 74 is to automatically provide Burt's advertisement on aparticular channel. In some embodiments, the advertisement engine 74causes a campaign management interface 113 (see FIG. 8B of the drawings)to be displayed to an advertiser. The interface 113 allows theadvertiser to optionally choose a channel, e.g., Ingenio, and a categoryin which the advertisement is to be provisioned/published. The interface113 allows the advertiser to specify the maximum bid amount that theadvertiser is willing to pay to provision the advertisement using theselected channel and category. FIG. 9 of the drawings shows an exampleof a web page 112 within which includes an advertisementrendered/provisioned in accordance with the techniques described herein.In one embodiment, this publication channel may be a web-basedpublication channel which is operated by an operator of the system ofthe present invention.

Alternatively, the syndication engine 76 may be used to syndicate Burt'sadvertisement to a number of third parties that host publicationchannels selected by Burt. Thus, in one embodiment, the syndicationengine 76 may cause Burt's advertisement to be syndicated to third partysearch engines, Internet yellow pages, online directories, and othermedia.

As will be seen in FIG. 6 of the drawings, the advertisement engine 74includes price per call logic 78, activity history logic 80, call statuslogic 82, connection success logic 84, manual indexing logic 86, andrandom logic 88. Each of the logic components 78-88 controls a parameterthat forms a basis of how Burt's advertisement is ultimately provided.The price per call logic 78 causes Burt's advertisement to be publishedon a price per call basis. Thus, for example, if Burt is willing only topay a low amount for each call, then his advertisement will be placed orranked low down within a search result page or category of advertisers.Alternatively, if Burt is willing to pay a high price per call, then hisadvertisement will be placed higher up in the search result page orcategory of advertisers. The table below shows how the price per calllogic 78 would rank or place advertisers within a channel based on a bidamount per call that an advertiser is willing to pay:

Placement Advertiser (Bid Amount per call) 1 800-349-2398 ($3.88) 2866-324-3242 ($3.22) 3 800-323-5321 ($2.01)

The activity history logic 80 analyzes the number of calls Burt receivedin a give time period, for example, the last day/week/month, and willrank Burt's advertisement within a display page based on the activityhistory. The call status logic 82, examines the status (active orinactive) of Burt's advertisement, and selectively publishes Burt'sadvertisement based on the status. The connection success logic 84measures a connection success rate for calls to the telephone numberassigned to Burt's advertisement and ranks Burt's advertisement within adisplay page based on the connection success rate. For example, ifBurt's telephone number enjoys a low connection success rate then thelogic 84 will cause Burt's advertisement to be ranked lowly within apublication page. The manual indexing logic 86 allows an operator tomanually index or rank Burt's advertisement within a publication page.The random logic 88 allows Burt's advertisement to be randomly ranked orplaced within a result page. In one embodiment, the ranking of Burt'sadvertisement within a display page may be based on any combination ofthe parameters controlled by the logic components 78-88, which may bedictated by a third party who employs the system. In alternativeembodiments, additional, less, or different logic may be included in theadvertisement engine 74 without departing from the invention.

In one embodiment, an advertisement engine 74 further includes one ormore modules for searching advertisements according to a query request,sorting advertisements, allocating real time communication references(e.g., traditional telephone numbers, SIP address, user ID of instantmessaging system, etc.).

Referring now to FIG. 7 of the drawings, the components within the callhandling module 38 include a call routing engine 92, and a callmonitoring engine 94. As will be seen, the call routing engine 92includes redirect logic 96 to cause redirection of a telephone call tothe number assigned to Burt's advertisement. The redirection is to atelephone number specified by Burt during creation of the advertisementusing the advertisement creation module 46. The call routing engine 92also includes VoIP logic 98 to route a telephone call to or from aclient to a telephone number specified by Burt in the advertisementusing VoIP technology.

The call routing engine 92 may also include prompt logic 99 that causesa prompt to be played to a caller before routing of a telephone call toBurt's telephone number. In one embodiment, the prompt logic 99 plays aninformation prompt to the caller to inform the caller of Burt's actualtelephone number. Thus, the caller may, in future, call Burt directlyusing Burt's actual telephone number instead of the telephone numberassigned to Burt by the system. In such cases, Burt will not be billedby the system for telephone calls to his actual telephone number. In oneembodiment, the prompt logic 99 may also cause an information prompt tobe played to Burt to inform Burt of the source of the telephone call. Insome cases, the prompt logic 99 may cause an email or facsimile alert tobe automatically generated and sent to an advertiser, in order to informthe advertiser of the telephone number of the caller. An example of suchan email is shown in FIG. 10 of the drawings and is marked as referencenumeral 116. In alternative embodiments, additional, less, or differentlogic may be included in the call routing engine 92 without departingfrom the invention.

The call monitoring engine 94 includes call number logic 100 to trackthe number of calls generated in response to Burt's advertisement. Thecall monitoring engine 94 also includes Automatic Number Identification(ANI) logic 102 to identify the number of unique numbers of callers thatcall Burt, automatically. The call monitoring engine also includes calllength logic 104 that monitors the length of each call to Burt.Connection status logic 108 monitors whether a call is successful,whether an engaged or busy tone is encountered, or whether Burt simplydid not answer his telephone. Based on information supplied by logiccomponents 100 106, a report is compiled and may be viewed by Burt. Inone embodiment, the report includes a number of calls, the number ofcalls from unique telephone numbers, the telephone numbers of thecallers, the length of each call, and the number of calls that weresuccessful, for which an engaged tone was returned, or that wentunanswered. In one embodiment, the report provides additionalinformation based on an address lookup of the ANI, including but notlimited to demographic, socioeconomic, and psychometric information. Thereport may be used by Burt in order to monitor the effectiveness of anadvertisement campaign, and to optimize the campaign. In alternativeembodiments, additional, less, or different logic may be included in thecall monitoring engine 94 without departing from the invention.

In one embodiment, the advertising publication module may publish theadvertisement on a telephone-based advertising service. For example, theadvertisement can be delivered to a consumer through audio as part of avoice portal or telephone-based directory such as a 411 telephonedirectory.

Referring to FIG. 11 of the drawings, reference numeral 150 generallyindicates hardware that may be used to implement the above-describedsystem. The hardware 150 typically includes at least one processor 152coupled to the memory 154. The processor 152 may represent one or moreprocessors (e.g., microprocessors), and the memory 154 may representrandom access memory (RAM) devices comprising a main storage of thehardware 150, as well as any supplemental levels of memory e.g., cachememories, non-volatile or back-up memories (e.g. programmable or flashmemories), read-only memories, etc. In addition, the memory 154 may beconsidered to include memory storage physically located elsewhere in thehardware 150, e.g. any cache memory in the processor 152, as well as anystorage capacity used as a virtual memory, e.g., as stored on a massstorage device 160.

The hardware 150 also typically receives a number of inputs and outputsfor communicating information externally. For interface with a user oroperator, the hardware 150 may include one or more user input devices156 (e.g., a keyboard, a mouse, etc.) and a display 158 (e.g., a CathodeRay Tube (CRT) monitor, a Liquid Crystal Display (LCD) panel).

For additional storage, the hardware 150 may also include one or moremass storage devices 160, e.g., a floppy or other removable disk drive,a hard disk drive, a Direct Access Storage Device (DASD), an opticaldrive (e.g. a Compact Disk (CD) drive, a Digital Versatile Disk (DVD)drive, etc.) and/or a tape drive, among others. Furthermore, thehardware 150 may include an interface with one or more networks 162(e.g., a local area network (LAN), a wide area network (WAN), a wirelessnetwork, and/or the Internet among others) to permit the communicationof information with other computers coupled to the networks. It shouldbe appreciated that the hardware 150 typically includes suitable analogand/or digital interfaces between the processor 152 and each of thecomponents 154, 156, 158 and 162 as is well known in the art.

The hardware 150 operates under the control of an operating system 164,and executes various computer software applications 166, components,programs, objects, modules, etc. (e.g. a program or module whichperforms operations described above. Moreover, various applications,components, programs, objects, etc. may also execute on one or moreprocessors in another computer coupled to the hardware 150 via a network152, e.g. in a distributed computing environment, whereby the processingrequired to implement the functions of a computer program may beallocated to multiple computers over a network.

As discussed above, the syndicate engine 76 is used to syndicate Burt'sadvertisement to a number of third parties. These demand partners (alsoreferred to herein as syndication partners) can receive a percentage ofthe advertising revenue generated via the pay-per-call method and systemdescribed, herein. Thus, as in the example of the table above, theadvertiser of placement 1 pays $3.88 per call received to phone number800-349-2398. Now suppose the call to the advertiser of placement 1,resulted from an advertisement presented on a demand partner's website.The demand partner would be entitled to a percentage of that $3.88. Thepresent method and system offers multiple embodiments for tracking,monitoring, and determining demand partner compensation.

In one embodiment, described in the flow diagram of FIG. 12, in process1202 an advertiser (also referred to herein as a merchant or listing) isgiven a separate telephone number for each separate demand partner thatis posting the merchant's advertisement. As described herein, inmultiple embodiments, telephonic references, including telephone numbersand telephone extensions corresponding to a base telephone number, areassigned using the telephone number auto generation logic 56.

In one embodiment, the alias phone number is mapped to the advertiser'sactual phone number, and calls made to the alias are monitored in orderto track the respective demand partners. Therefore, in process 1204billing module 40 tracks and/or credits demand partners a percentage ofthe revenue charged to the advertiser (or collected from the advertiser)for calls placed to the advertiser's alias telephone numbercorresponding to the respective demand partner.

In another embodiment, described in the flow diagram of FIG. 13, inprocess 1302 an advertiser receives a single/base (the same) telephonenumber for a set of the demand partners. In process 1304, a separateextension is assigned to the advertiser for each of the separate demandpartners. More specifically, the separate demand partners list the sametelephone number for the advertiser, but also include an extensionunique to the respective demand partner. For example, a listing couldhave the number “(800) new-cars” for the set of demand partners, buteach demand partner posting the common telephone number for theadvertiser would also provide a separate extension corresponding to therespective demand partner (e.g., ext. 102 corresponding to the XYZsyndication partner, ext. 104 corresponding to the ABC syndicationpartner, etc.) In process 1306, billing module 40 tracks and/or creditsa demand partner a percentage of the revenue charged to the advertiser(or collected from the advertiser), for calls placed to the advertiservia the telephone extension corresponding to the respective demandpartner.

In an alternative embodiment, described in the flow diagram of FIG. 14,in process 1402 a demand partner uses a base telephone (i.e., a single)number for a set of advertisers. In process 1404, the demand partnerprovides a separate extension to each of the advertisers using the samebase number. For example, the demand partner could use the telephonenumber (800) Call XYZ for a set of advertisers, and provide theextension 102 for Joe's plumbing, and extension 104 for Carl's plumbing,etc. In process 1406, billing module 40 tracks and/or credits a demandpartner a percentage of the revenue charged to the advertiser (orcollected from the advertiser), for calls placed to the advertiser viathe base telephone number corresponding to the respective demand partnerand the unique telephone extension assigned to the advertiser at therespective demand partner.

According to another embodiment, a click-to-reveal method is proposed,as described in U.S. Patent Application No. 60/552,124, entitled “AMethod and Apparatus to Provide Pay-Per-Call Performance BasedAdvertising and Billing” filed on Mar. 10, 2004, herein incorporated byreference. As described in the flow diagram of FIG. 15, in process 1502a user is presented with an advertisement via a demand partner'swebsite. The advertisement does not show the advertiser's complete phonenumber, but instead contains a hyperlink to reveal the advertiser'sphone number, or the remaining portion of the telephone number. Inprocess 1504, the advertisement engine 74 monitors the number ofclick-throughs to reveal the advertiser's number. In one embodiment, itis assumed that each click-through from a demand partner results in acall to the respective advertiser. As a result, in process 1506 billingmodule 40 tracks and/or calculates an amount to credit a demand partnerbased at least in part on a number of click-throughs to reveal anadvertiser's telephone number.

In yet another alternative embodiment, a demand partner is provided witha click to call format. In one embodiment, as described in the flowdiagram of FIG. 16, in process 1602 in addition to listing a telephonenumber for an advertiser (or in place of listing a telephone number forthe advertiser) a link (e.g., a hyperlink, or an icon, or a button) isprovided by the demand partner to initiate establishing a telephoneconnection between the viewer/customer and the advertiser in response tothe viewer/customer activating/selecting the hyperlink provided. In oneembodiment, in process 1604, in response to activating/selecting thehyperlink provided, the viewer/customer is prompted for their telephonenumber to establish the telephone connection with the advertiser. Afterthe customer enters their telephone number, a telephone connection isestablished between the customer and the advertiser.

In yet another embodiment, if the viewer/customer has a VoIPcommunications device, VoIP logic 98 may connect the advertiser to theviewer/customer without the need for the customer/viewer to providetheir telephone number. The VoIP communications device includestelephony devices attached to the user's computer, as well as mobilecommunication devices, such as PDA's and cellular phones.

In the embodiment employing a click to call (for PSTN and VoIPconnections), in process 1604, a demand partner providing the click tocall option would be tracked/credited (i.e., a percentage of the chargeto the advertiser) each time a viewer/customer selects/activates a clickto call icon for the respective advertiser.

In another embodiment, described in the flow diagram of FIG. 17, inprocess 1702 an advertiser is given one telephone number for a set ofdemand partners. In process 1704, credits to the demand partners forcalls placed to the advertiser's listed telephone number are proratedbased on a number of page views for the advertiser's telephone numberlisting via the respective demand partners. For example, if 70% of theadvertiser's page views are accessed via demand partner ABC, and 30% ofthe advertiser's page views are accessed via demand partner XYZ, the ABCdemand partner would receive 70% and the demand partner XYZ wouldreceive 30% of the credits payable to the demand partners for callsplaced to the advertiser's listed telephone number.

In another embodiment, described in the flow diagram of FIG. 18, inprocess 1802 at least a first set of advertisers are given uniquetelephonic reference for each demand partner. One or more advertisersare each given one telephonic reference for a set demand partners.

In process 1804, a statistical sampling of calls to advertisers with theunique telephonic reference is generated. In one embodiment, thestatistical sampling represents a sampling of a percentage of calls toan advertiser (or set of advertisers) that originate from anadvertisement listed by a first demand partner compared to calls thatoriginate from the same (or similar) advertisement listed by otherdemand partners. In one embodiment, the samplings may be separated basedon a category of advertisers (e.g., restaurants, automobiles, etc.).

In process 1806, the samplings are used as a basis fortracking/crediting the demand partners with a percentage of the chargesto at least a set of the advertisers. Consider the example advertisers 1and 2 are each give a unique telephone, and 70% of the calls toadvertisers 1 and 2 are from telephonic references listed by partnerABC. Given the example, an assumption is made that 70% of the calls tothe advertisers using a common number among the demand partners, areoriginated from advertisements listed by partner ABC.

Therefore, in one embodiment, based on the statistical sampling, partnerABC would be credited for 70% of the calls placed to the advertisersusing a common number among the demand partners. In one embodiment,tracking/crediting the demand partners based on the statistical samplingcould also be applied to the advertisers using unique numbers among thedemand partners.

As described above, telephone-call tracking is used to determine thenumber of phone calls a particular party, or directory, has received. Itcan be useful for a variety of purposes. It is particularly useful inmeasuring the success of advertising. For instance, a telephonedirectory may offer advertising placements to its advertisers, such asplumbers. By tracking the number of phone calls a particularadvertisement has received, the directory can demonstrate the value ofits advertising to the advertiser.

Telephone-call tracking can be used to measure the effectiveness of avariety of advertising vehicles in addition to the physical yellow-pagesphone book. Newspaper classifieds can utilize call tracking, as cantelevision commercials that display phone numbers for consumers to call.By counting the number of telephone calls such advertisements receive,the campaign's effectiveness can be measured. This is of benefit both tothe advertiser and to the directory/publisher.

Telephone-call tracking can be also used as such in directories that areonline, such as online yellow pages. Similarly, it can be used to trackthe success of online search advertising, such as keyword advertising.

Telephone-call tracking is particularly useful in pay-for-performanceadvertising systems, as described in several embodiments above. Inpay-for-performance systems, advertisers pay when an advertisementperforms. For instance, an advertiser can pay $1 each time a potentialcustomer clicks on an online-search advertisement. Similarly, inpay-per-call advertising systems, such as that described in U.S. patentapplication Ser. No. 10/872,117, filed Jun. 17, 2004, an advertiser'spayments are linked to the number of calls that advertiser receives. Insuch a pay per call advertising system, call tracking is vital, sincecounting the number of calls received determines the amount that theadvertiser must pay. In one embodiment, not only are the number of callsreceived counted but also the time of the call, since in one embodimentan advertiser may bid to pay a higher price per call in order to receivea more prominent placement for their advertisement.

In one embodiment, not only is it designed to track the number of callsand precise time of calls, but the demand source at which the callerviewed the advertisement may also be tracked. Online directories canhave many different external web sites through which they syndicate thesame advertisers, and it can be useful to know from which web site thephone call originated so that, in some cases, the directory cancompensate the external web site for having brought customers.Provisional U.S. Patent Application Ser. No. 60/560,926, filed on Apr.9, 2004, outlines this case.

Tracking phone calls may include publishing a unique phone number thatis different from the advertiser's standard phone number. When a callerviews the advertisement, the unique phone number appears, and the callerdials it. The call coming in on the unique phone number is thenrerouted, using the call tracker's telephony equipment, to theadvertiser's standard phone number. In addition to rerouting the call,the call tracker also records that a call was made and the precisetime/duration of the call. In a pay-per-call advertising system, thisinformation can be used to bill the advertiser for the call.

In cases where directories would also like to identify the demand sourceof the call, a single advertiser will have to be given multiple uniquephone numbers, one for each demand source where that advertiser appears.For instance, the advertisement of a single plumber might be displayedin two different online directories and three different online searchengines. In order to track which of these demand sources produced a callfrom a customer, the single plumber would have to be assigned fivedifferent unique telephone numbers. By monitoring which unique phonenumber was dialed, it can be determined which demand source deserves thecredit for producing the call.

In one embodiment, the unique telephone numbers assigned to anadvertiser and or a demand partner is for a short period of time afterthe listing of the advertiser containing the unique telephone numbers ispresented. After the time period, the telephone numbers can bere-assigned to other advertisers.

FIG. 19 shows a diagram of a system to make and track phone connectionsaccording to one embodiment of the present invention.

In FIG. 19, a database (1921) may contain the phone numbers of targetphone A (1931), target phone B (1933), . . . , target phone X (1939),etc. Typically, the target phones belong to the institutions,businesses, individuals, etc, which seek for publicity through variousmedia channels, such as media channel A (1901) (e.g., web server), mediachannel B (1902) (e.g., WAP server), media channel C (1903) (e.g., shortmessaging service center), media channel D (1904) (e.g., custom server),media channel E (1907) (e.g., cable television), media channel E (1908)(e.g., news press), media channel G (1909) (e.g., radio station), etc.

In one embodiment of the present invention, the phone numbers of thetarget phones are not directly publicized over the media channels.Instead, encoded target phone numbers (1923) are used. Using the encodedtarget phone numbers (1923), a user cannot reach target phones directly.The encoded target phone numbers (1923) allow the association ofadditional information with the target phone numbers, such as the mediachannels used, special promotions, etc.

The encoded target phone numbers are delivered with content information(e.g., web page, WAP page, short message, television programs, newsarticles, etc.) to user devices, such as user device A (1911) (e.g.,cellular phone), user device B (1912) (e.g., personal digital assistant(PDA)), user device C (1913) (e.g., computer), user device D (1916)(e.g., receiver), user device E (1918) (e.g., newspaper).

In one embodiment, a user device can include a USB phone, a Bluetoothwireless phone, or one or more speakers or headphones with one ormicrophones for the implementation of a software based phone.

In one embodiment, the user devices/phones support one or more real timecommunication capabilities, such as VoIP using Session InitiationProtocol (SIP) which may support video and instant-messagingapplications, IP phone, regular phone over VoIP service, Bluetoothwireless phone, USB phone, software based phone, and other forms of IPtelephony.

In one embodiment, the user device can include a television set toreceive the advertisement. Further, the television set may have thecapability to accept user input so that the television content may bechanged according to the user input (e.g., interactive television, webtelevision, internet television, etc.), or be coupled with a set top boxwhich has such capability. The user input may be provided to the contentprovider through the same communication channel in which the televisioncontent/programs are delivered (e.g., a cable system of a cabletelevision system), or a separate channel (e.g., a phone line, anInternet connection, etc.). The user input may include a request to makea connection to an advertiser featured in an advertisement presented ina television program, such as a request for a telephonic connection tothe advertiser.

In one embodiment, the user devices are mobile devices, such as PDA,cellular phone, etc. The user devices obtain content information,including advertisements, through wireless communication connections,such as cellular communication links, wireless access points forwireless local area network, etc.

In one embodiment, a user device (e.g., a cellular phone, a computer, aPDA) can receive content information from multiple types of mediachannels (e.g., a web server, a WAP server, an SMSC, CHTML, etc.).

In one embodiment, a user device is capable to dial a phone call (e.g.,automatically according to the encoded phone number embedded in thecontent information when a user selects the number). Alternatively, auser may manually dial a phone call using a separate phone, such as userphone S (1917) or user phone T (1919).

In one embodiment of the present invention, dialing at least a portionof an encoded target phone number connects the phone call to a phonedecoder and router (1925) first. According to the encoded target phonenumber dialed, the phone decoder and router (1925) determines thecorresponding target phone number using the database (1921) and connectsthe phone call to the corresponding target phone (e.g., one of targetphones 1931-1939) through the telephone network (1927).

Note the telephone network (1927) may be circuit switched, packetswitched, or partially circuit switched and partially packet switched.For example, the telephone network may partially use the Internet tocarry the phone call (e.g., through VoIP). For example, the connectionbetween the user phone/device and the phone decoder and router (1925)may be carried using VoIP; and the connection between the phone decoderand router (1925) may be carried using a land-line based, circuitswitched telephone network.

In one embodiment of the present invention, the information associatedwith the encoded target phone number, such as the media channel used toprovide the encoded target phone number to the users, is alsodecoded/retrieved using the database (1921). Thus, the informationassociated with the encoded target phone number can be tracked/stored.

In one embodiment, the phone decoder and router (1925) also determinesthe phone number of the user through Automatic Number Identification(ANI). ANI is a phone system feature that provides the billing phonenumber of the person making the phone call.

The information about the caller, target phone number, the media channelused for delivering the contact information to the user can be used tobill the caller and/or the target phone number, and providecredit/compensation for the corresponding media channel.

For example, the advertisements for target phone numbers can be paid foron a pay per call basis. Monitoring and tracking the calls can be usedfor billing the advertisers. Alternatively, the users may be seeking thecontact information on a pay per call basis. Monitoring and tracking thecalls can be used for billing the users.

In one embodiment of the present invention, the additional informationassociated with the encoded target phone number is used to providecredit/compensation to the operators of the corresponding media channelsthat are responsible for leading the users to the phone calls to thetarget phones. The system can further track the time and duration of thephone calls and other information, such as conditional promotions,electronic coupons, etc.

The information about the media channels that are responsible forleading the users to the phone calls to the target phones can also beuseful for the advertisers. The advertisers may wish to know which mediachannel is more effective in reaching users. For example, using thestatistic information about the media channels which successfully bringin phone calls, the advertisers may fine tune advertisement strategies.Further, different media channels may charge differently for theadvertisements; and the advertisers may bid differently on differentmedia channels for their advertisements.

In one embodiment of the present invention, an encoded target phonenumber has the same number of digits as a standard phone number (e.g., atypical telephone number assigned by a telephone company). Thus, dialingthe encoded target phone number is as easy as dialing the target phonenumber; and dialing the target phone number reaches the phone decoderand router (1925). In such an arrangement, a large number of encodedphone numbers are generally required to differentiate the differenttarget phones and different media channels.

In one embodiment of the present invention, an encoded target phonenumber has more digits than a standard phone number. A first portion ofthe encoded target phone number has the same number of digits as astandard phone number to reach the phone decoder and router (1925)through the telephone network (1927); and a second portion of theencoded target phone number is to be decoded by the phone decoder androuter (1925). For example, the Dual Tone Multi-Frequency (DTMF) decodercan be installed in the phone decoder and router (1925) to detect thesecond portion of the encoded target phone number dialed at the userphone. The detected phone number can then be used to recover the targetphone number. In one embodiment, a human operator or an interactivevoice response (IVR) system can be used to receive the second portion ofthe encoded target phone number for decoding.

When an encoded target phone number has more digits than a standardphone number, the additional digits can be implemented as a telephoneextension, or as input to an IVR system. In one embodiment, an encodedtarget phone number includes a Session Initiation Protocol (SIP) addressfor the initiation of a VoIP call to the system.

In one embodiment of the present invention, a single telephone number isused to reach the phone decoder and router (1925) for different targetphone numbers; and the portion of the encoded target phone number thatis used to reach the phone decoder and router (1925) is not used indetermining the information associated with the encoded target phonenumber.

Alternatively, multiple telephone numbers can be used to reach the phonedecoder and router (1925); and the entire encoded target phone numbercan be used to determine the information associated with the encodedtarget phone number.

In one embodiment of the present invention, the encoded target phonenumbers can have different numbers of digits. The advertisers may bearranged to bid for shorter encoded target phone numbers.

In one embodiment of the present invention, the encoded target phonenumbers are assigned only when needed for use in a media channel. Forexample, when a query is received at the server of the system, thesystem assigns phone numbers for the advertisements that satisfy thequery.

In one embodiment, a look-up table approach is used to encode theinformation. For example, the database (1921) keeps track of theinformation about the media channel and the target phone number (andother information, if any) for the encoded target phone number so thatthe encoded target phone number can be used as a key to retrieve thecorresponding information. Thus, it is not necessary to have apredetermined structure to encode the information about the mediachannels and the target phone number.

Alternatively, algorithms can be used to generate and encode targetphone number and associated information. For example, a predeterminedalgorithm may be used to encode different information in the targetphone number. For example, the target phone number may include a numberof fields separated by “*” or “#”. Each of the fields can be decodedseparately (e.g., from a separate look up table or a mapping algorithm)to determine the target phone number, identity of the media channel,etc.

For example, a set of parameters can be mapped from a string ofcharacters to a string of numerical digits as a part of the encodedtarget phone number; and the string of numbers can be mapped back intothe string of characters at the phone decoder and router (1925). Whensuch a mapping scheme is used, a look up table is not necessary. Forexample, an encoded target phone number may include a first portion thatis the phone number of the phone decoder and router (1925), a secondportion that is the target phone number appended with a number mappedfrom an identifier of the media channel. To prevent the user fromdialing the target phone number directly, an encryption/scramblingscheme can be used to encode the second portion, which is decoded at thephone decoder and router (1925).

In one embodiment of the present invention, the phone decoder and router(1925) determines the target phone number from the encoded target phonenumber dialed by the user and then dials the target phone number for theuser and joins/bridges the phone calls so that the user can talk to thetarget phone.

In one embodiment of the present invention, users dial the encodedtarget phone numbers manually. A user can dial the encoded target phonenumber regardless of the user device used and the media channel used.

Alternatively, in one embodiment, user devices can automatically dialthe encoded target phone numbers. For example, a cellular phone, acomputer or a PDA can dial a phone number using a Dual ToneMulti-Frequency (DTMF) generator. In one embodiment of the presentinvention, the encoded target phone numbers are presented in the contentinformation in a format such that when the user selects the phone numberthe user device (e.g., a cellular phone or a computer) dials the encodedtarget phone number for the user. The user selection may be in the formof a keyboard/keypad input, a touch pad input, a track ball input, amouse input, a voice command, etc.

In one embodiment, the user device initiates the phone call through aVoIP system when the user selects the encoded target phone number.

In one embodiment of the present invention, the user device dials thephone number for the user without the user manually pressing thesequence of the encoded target phone numbers. This greatly simplifiesthe process of make the phone call. Since a user device can dial a longsequence of number easily, a large number of digits can be used toencode the information without presenting any difficulties for theusers.

In one embodiment of the present invention, the encoded target phonenumbers are formatted so that the user device dials a first portion ofthe encoded target phone numbers to access the phone decoder and router(1925), pauses for a short period of time for the phone decoder androuter (1925) to prepare for receiving the second portion of the encodedtarget phone numbers, and then dials the second portion of the encodedtarget phone numbers. Thus, the user device provides a user-friendly wayof dialing the encoded target phone numbers; and, making the phone callcan be as easy as making a “click” to access a web page.

In FIG. 19, the user device initiates the phone call. Alternatively, aphone router may be used to initiate phone calls both to the user device(or a separate user phone) and the target phone and then join/bridge thephone calls to connect the user to the target phone. For example, whenthe user selects the encoded target phone number, the selection of thetarget phone number is transmitted to the phone router with the userphone number.

The user phone number can be automatically determined through ANI, orthrough a user preference setting, or through an entry submitted withthe selection of the encoded target phone number.

In one embodiment, the selection of the encoded target phone number istransmitted to the corresponding media channel, which forwards therequest for making the phone call to a server (e.g., a web server)connected to the phone router. Alternatively, the content informationcan be formatted so that the selection is sent directly to the serverthat is connected to the phone router.

When the router starts the phone calls, the encoded target phone numbercan also include alphabetic characters (and/or other characters). Theserver and/or the phone router can decode the encoded target phonenumber to recover/retrieve the target phone number and other associatedinformation, such as the identity of the media channel that iscreditable for providing the encoded target phone number to user.

In one embodiment of the present invention, an advertisement ispresented to end users around the globe without geographical arealimitations. For example, an advertiser may provide services and/orproducts to customers around the globe. The advertisement may bedelivered to the worldwide users of the Internet.

In one embodiment of the present invention, the intended audience of anadvertisement is the population in a particular geographical area orpeople interested in a particular geographical area. For example, anadvertiser may limit its service area within a geographical area, wherethe advertiser can provide services and/or products to the customersmore effectively. For example, a business may better serve the customerswithin a convenient walking/driving distance to the site of thebusiness. A business may limit the service area within a city, a county,a state, a country, or other types of regional areas. Further, a largebusiness entity having offices around the world may want to attractcustomers in different geographical regions to different offices forbetter services.

In one embodiment of the present invention, a target geographic area isspecified for publicizing a phone number which can be used to reach anadvertiser. The target geographic area information can be used toeffectively reach potential customers and connect the customers to thecorresponding phones of the advertisers.

For example, in one embodiment, the advertiser can specify a geographicservice area corresponding to a phone number. The service area may bespecified in terms of radius, city, region, state or national boundary,etc. The service area can be used to limit the delivery of theadvertisement to customers seeking information in the correspondinggeographic area. The service area can be used to stream information intoa mobile device when the mobile device enters the service area, with orwithout explicit request from the user of the mobile device. The servicearea information can also be used to route the phone to thecorresponding one of the offices of the advertiser, based on thelocation of the caller, if the advertiser has more than one office.

In one embodiment of the present invention, an advertisement presentedin a media channel is for a single advertiser. The end user selects anadvertiser according to the advertisements presented on behalf ofindividual advertisers; and the phone decoder and router connects theend user and the selected advertiser according to the encoded targetphone number individually publicized in the advertisement for theadvertiser. When the user views the online advertisements, the selectionof the advertiser is based on the online information.

In one embodiment of the present invention, an advertisement ispresented in a media channel for a group of advertisers, such as a groupof mortgage brokers. The advertisement contains an encoded target phonenumber which is reachable to the group of mortgage brokers. When theencoded target phone number is selected or used, the selection of aparticular advertiser is performed at the phone decoder and router.

For example, a toll-free number is published to advertise mortgagebrokers in a particular geographic area. When a consumer dials thetoll-free number, the call is routed to the highest bidding mortgagebroker who is available in that market.

The phone decoder and router may select the target advertiser accordingto the bidding of the advertisers for the advertisement. The advertiserwho places the highest bid is the winner for the call. Alternatively, orin combination, other types of selection criteria can also be used. Forexample, the user may be interested in advertisers in a particulargeographical region; and the geographical area of interest to the callercan be determined and used in selecting the target advertiser. Further,the user may be interested in a connection without excessive waitingtime. The status of the availability of the advertisers to answer thecall can be used in ranking the candidates for routing the call.

In general, an indicator used to rank the candidates may be a functionof a number of parameters, such as the bid for the advertisement, theprojected waiting time, an indicator showing a degree of matching to oneor more user requirements (e.g., geographic area, service type, etc.),advertisement budget, and others.

FIG. 20 shows a diagram of a system to make offline selection ofadvertisers according to one embodiment of the present invention.

In FIG. 20, the advertisement (2001) is for an advertiser group T (2007)which includes a number of different advertisers, such as advertiser A(2021), advertiser B (2023), advertiser X (2029), etc. For example, theadvertisers of the group may offer the same types of services orproducts under similar terms and/or prices. Thus, a unifiedadvertisement can be presented on behalf of the entire group. Theadvertisement delivery (2005) can be in any of the forms known in theart. For example, the advertisement can be delivered through newspaper,radio, television, yellow book, listing service, web search engine, website banner, WAP, SMS, etc. The advertisement contains phone number M(2003) for the users to initiate a phone call to reach one of theadvertisers.

In one embodiment, the advertised phone number (e.g., 2003) can alsocontain extension digits in addition to toll-free digits. In oneembodiment, the extension digits are used to convey additionalinformation such as geography, category, or the ability to tracespecific advertising creative (e.g., the call resulted from theadvertisement on the billboard on Second Street). In one embodiment,dialing of the extension digits (or some of the extension digits) isoptional; if the extension digits are not dialed, the call goes throughanyway; and the information corresponding to the extension digits is notcollected (or, similar information is extracted/extrapolated from otherdata sources, such as the phone number from which the call is initiated,etc.).

In one embodiment of the present invention, the phone number M (2003) isnot specifically for a particular advertiser at the time theadvertisement is presented. Thus, at the time the user initiates thephone call, the target advertiser is yet to be determined. The selectionof a particular target advertiser is after the initiation of the phonecall.

In one embodiment of the present invention, a switch/router (2000) atthe phone number M is used to connect the users to the advertisersdynamically according to the information in the advertiser database(2009). When a user, such as user A (2011), user B (2013), user S(2019), etc., calls the phone number M (2003), the user is connected tothe switch/router (2000) first. With or without further user input, theswitch/router (2000) connects the call to an advertiser, such asadvertiser A (2021), advertiser B (2023), advertiser X (2029), etc. Theadvertiser is charged based on the telephone calls generated for theadvertiser. In one embodiment, the selection of the advertiser is madeat the switch/router after the user phone call is received. Theswitch/router may operate via switching circuits or changingcommunication data packets.

Alternatively, information about the user phone number and the desire tomake the phone call according to the advertised phone number can betransmitted to the switch/router through a communication link other thana phone connection. For example, an email, a fax, an HTTP (HyperTextTransfer Protocol)/WAP (Wireless Application Protocol) request, etc.,can be used to submit the request for the phone connection. Theswitch/router then initiates the phone call to the user and the phonecall to the selected winning advertiser and bridges the two calls.

Note that the phone number M (2003) may also be encoded in a way so thatthe information about the media channel which provides the phone numberto the user can be decoded, as discussed above. For example, differentmedia channels may be assigned different phone numbers for reaching thesame group of advertisers through the switch/router (2000). According tothe phone number in the advertisement, the switch/router (2000) candetermine the media channel that is creditable for the delivery of thephone number to the users.

In one embodiment of the present invention, a winning advertiser isselected according to the bidding for advertisement. The highest bidderwins the telephone call. The advertisers may adjust their bids anytimethrough any communication media to balance their chances to get a callresulting from the advertisement and the cost for the advertisement. Forexample, the advertisers may change their bids through a web site thatis connected to the advertiser database, through an email torepresentatives or automatic email gateways of the advertiser database,through a phone call, a fax, a letter, etc.

Alternatively, the set of highest bidders may be determined; and thecalls resulting from the advertisement are distributed to the set ofhighest bidders in frequencies that are proportional to their bidamounts. Alternatively, one from the set of highest bidders is furtherselected according other criteria, such as the geographic distance fromthe advertisers to the callers. Alternatively, other criteria, such asthe matching of geographic service area to the location of the callers,are used to select a set of candidates; and the candidates are thenranked according to the prices specified by the advertisers for the payfor performance advertisement, where the performance is measured interms of phone calls resulting from the advertisement.

In one embodiment, the availability of the advertisers to answer thecall is also considered. In one embodiment, if the top-ranking (e.g.,according to the bidding) advertiser receives a call and doesn't pick upafter a certain amount of time (e.g. 30 seconds), the call isautomatically routed to the second-highest ranking advertiser, and soon. In another embodiment, the missed call is routed to a humanconcierge who transfers the call to the appropriate available advertiseror information source.

In one embodiment, the advertiser group includes subgroups ofadvertisers for different geographic areas. Indications of geographicareas of interest to the callers can be used in the selection process.

In one embodiment, the selection of the geographic area is made when theuser selects the phone number from the advertisements. The phone numberis encoded with geographic area information such that, when the phonenumber is dialed, the geographic area information can be automaticallydecoded from the phone number dialed; and the geographic areainformation can be used to rank the advertisers and/or eliminate theadvertisers that are not for the corresponding geographic areas.

In one embodiment, the geographic area information is determined fromthe location of the user phone. Alternatively, the user may specify thegeographic area in the phone call to the switch/router (2000), throughan automated system or through human concierges. Further, the user mayspecify requirements other than geographic areas for selecting thewinning advertiser. Further details are provided below.

FIG. 21 shows a diagram of a telephone connection system for offlineselection of advertisers according to one embodiment of the presentinvention.

In FIG. 21, when a user calls an advertised telephone number, the phonecall is connected to the telephone receiving equipment (2101). Thetelephone receiving equipment (2101) is connected to the control center(2105) to operate the telephone switching equipment (2103), whichselectively connects incoming phone connections (2121) from the usersand outgoing phone connections (2123) to the winning advertisers.

In one embodiment, the telephone receiving equipment (2101) and thetelephone switching equipment (2103) are circuit switched, includingPrivate Branch Exchange (PBX) and a dedicated voice network.Alternatively, the telephone receiving equipment (2101) and thetelephone switching equipment (2103) may be packet switched, includingInternet Protocol (IP) based PBX, a data communication network and agateway. In general, various telephonic techniques known in the art canbe used.

When the telephone receiving equipment (2101) picks up a phone call, thecontrol center (2105) determines whether or not further information isneeded and/or can be obtained from the caller. For example, to determinea geographical area of interest, the control center (2105) can instructthe interactive voice response (IVR) system (2107) to prompt the callerto key in the desired zip code. In one embodiment, Interactive VoiceResponse (IVR) is a telephony technology in which one may use atouch-tone telephone to interact with a database to acquire informationfrom or enter data into the database without the help of a humanconcierge.

Further, the control center may direct the IVR system (2107) to promptthe caller to specify further criteria based on the advertiserinformation (2140). For example, when the phone number is for a group ofmortgage brokers, the user may be directed to select loan sizes, loantypes, etc.

Alternatively, the control center (2105) may instruct the geographicarea locator (2109) to determine a geographic area from which the callis initiated. For example, the geographic area locator may use thecellular position system to determine the location of a cellular phone,or use a satellite/pseudolite positioning system to determine thelocation of a mobile device. Pseudolites are ground-based transmitterssimilar to a Global Positioning System (GPS). Pseudolites are useful insituations where signals from an orbiting satellite might beunavailable, such as tunnels, mines, buildings or other enclosed areas.A satellite/pseudolite signal receiver may determine its location andtransmit the location through the cellular phone to a cellularcommunication system, or transmit the received signals to a locationserver which computes the location.

A cellular communication system may also determine the location of acellular phone. For example, the location of a cellular phone can bedetermined using a method known as Time Difference of Arrival (TDOA) inwhich the reception times of a cellular signal from a mobile station aremeasured at several base stations to determine the position of thecellular phone. Alternatively, a method known as Advanced Forward LinkTrilateration (AFLT), or Enhanced Observed Time Difference (EOTD), canbe used, which measures the reception times of cellular signals fromseveral base stations to the cellular phone. Alternatively, the cellularsite, in which the mobile device can communicate to a based station, canbe used to determine a rough position of the cellular phone. In general,any method used by a cellular phone provider to get location information(e.g., for emergency service) can be used.

The control center (2105) may also instruct the automatic numberidentification (ANI) unit (2111) to determine the phone number of theincoming call and look up the geographic area information from thedatabase for the phone numbers.

Alternatively, the control center (2105) may connect the phone calltemporally to a human concierge who can help the caller to specify aselection criterion (or criteria).

In one embodiment of the present invention, the control center (2105)uses a number of different types of information to select the winningadvertiser based on the advertiser information (2140).

In one embodiment, the advertiser information (2140) include theidentities of the advertisers (e.g., 2141), the geographic areas (e.g.,2143) of the advertisers, the phone number(s) (e.g., 2145) of theadvertisers, the placement bids (e.g., 2147) of the advertisers, theavailability statuses (e.g., 2149) of the advertisers, etc. In analternative embodiment, more or less fields can be used for theadvertiser information. For example, keywords of the advertisementsand/or categories of the products and/or services advertised in theadvertisements can be included in the database of advertiserinformation.

The availability may include the information about the projected waitingtime for a caller to get through. The availability may also depend onthe advertisement budget specified by the advertiser. For example, theadvertiser may specify the advertisement budget in terms of the maximumnumber of calls in a day, the minimum time intervals between two calls,working hours, etc.

In one embodiment, in view of the caller's implicitly or explicitlyspecified requirements (e.g., the geographic area, the loan type, loansize, etc., if there is any), the control center ranks the advertisersaccording to the current advertiser information. For example, thecontrol center may eliminate the advertisers that are not available ordo not meet the caller's requirements and sort the remaining candidatesaccording to the bid for advertisement. The highest bidder in theremaining candidates is the winner. Alternatively, other types ofsorting criteria can be used. For example, an indicator of the degree ofmatching between the caller's requirements can be weighted according tothe advertisement bid to generate an indicator for selecting the winner.

After the winning advertiser is determined, the control center (2105)can instruct the telephone switching equipment (2103) to connect theincoming phone call to the phone number of the winning advertiser. Thecontrol center (2105) then creates a record entry in connection records(2130) to indicate the connection made for the advertiser. For example,a record entry may include information such as the from phone number(2131), the to phone number (2133), the time the connection is made(2135), the duration of the connection (2137), the media channel (2139)responsible for delivering the advertisement to the caller, theadvertisement bid (2132) of the advertiser at the time of theconnection, etc. Other information, such as whether or not a humanconcierge is involved, can also be recorded. In an alternativeembodiment, more or less fields can be used for the connection records.

In one embodiment, the recorded connection information is used togenerate invoice to bill the advertisers. An account of the advertisermay be debited automatically for the connection. Alternatively, apayment for the advertisement is collected automatically through anelectronic system for the connection.

FIGS. 22-24 show flow diagrams of making and tracking phone connectionsaccording to embodiments of the present invention.

In FIG. 22, operation 2201 receives a telephone call to a telephonenumber publicized in an advertisement for a group of advertisers.Operation 2203 selects an advertiser from the group of advertisers afterreceiving the telephone call. Operation 2205 connects the telephone callto a telephone number of the selected advertiser. Operation 2207 storesinformation about the telephonic connection to bill the advertiser basedon telephonic connections made to the selected advertiser for theadvertisement. In one embodiment, the geographic area of interest to thecaller is determined, which is used in selecting the advertiser as thereceiver of the telephone call.

In FIG. 23, after operation 2301 receives a telephone call to atelephone number advertised for a group of advertisers, operation 2303determines the telephone number of the caller through Automatic NumberIdentification (ANI). Operation 2305 determines a geographic areaassociated with the phone number (e.g., look up using the telephonenumber of the caller, obtain location information from a cellularpositioning system, a satellite/pseudolite positioning system, etc.).Operation 2307 automatically selects an advertiser from the group ofadvertisers according to the geographical area and the bidding of theadvertisers for the advertisement. Operation 2309 determines a telephonenumber of the advertiser. Operation 2311 routes the telephone call tothe telephone number of the advertiser. Operation 2313 charges theadvertiser for the advertisement that results in the telephone call tothe advertiser.

For example, in one embodiment, the system looks at the phone number(obtained through ANI) of the incoming call and automatically routes itto the highest bidding mortgage broker in the geographic area of thephone number.

In FIG. 24, after operation 2401 receives a telephone call to atelephone number publicized in an advertisement for a group ofadvertisers, operation 2403 prompts the caller through an automaticInteractive Voice Response (IVR) System for a zip code of interest.

If operation 2405 determines that the caller indicates a need for thehelp of a human concierge, operation 2407 connects the caller to a humanconcierge to receive caller specified selection requirements (e.g.,geographical area of interest, loan type, loan size, etc.).

Operation 2409 selects an advertiser from the group of advertisersaccording to a geographical area of interest to the caller and thebidding of the advertisers for the advertisement.

If operation 2411 determines that the advertiser has more than oneoffice, operation 2413 determines an office of the advertiser based onthe geographical area of interest to the caller.

Operation 2415 routes the telephone call to the office of theadvertiser.

For example, in one embodiment, a customer is prompted on the telephoneby an automatic IVR to key in the desired zip code. The system thenroutes the call to the highest bidding mortgage broker in thatgeographic area.

For example, in one embodiment, the customer is connected to a humanconcierge who asks for the desired geographic area and routes the callto the highest bidding mortgage broker in the desired geographic area.

For example, in one embodiment, a large national account which has localregional offices around the country, geography is ascertained using oneof the above discussed methods and the call is then routed to the localoffice that best matches the geography.

In one embodiment of the present invention, an advertisement is for onesingle advertiser that has a number of different locations. Theselection of the location of the advertiser and the corresponding targetphone number is made at the time a phone call is received at aswitch/router; and the selection may be automatic based on ANI orlocation information determined from a positioning system, orsemi-automatic based on user interaction with an automated IVR, ornon-automatic based on the user interaction with a human concierge.Alternatively, the advertisement can be for a group of differentadvertisers, some of which have different locations/branches in a largegeographic area (e.g., a country, around the world, etc.).

In one embodiment, before an incoming call is connected to a selectedadvertiser (e.g., selected according to price bids of the advertisersfor the phone lead, and/or a geographic location/area, and/or othercriteria which may be explicitly or implicitly specified by the caller,etc.), no further advertisement information is presented in thetelephone call to the caller. In one embodiment, no input is requiredfrom the caller to connect the incoming call, which is connected by theserver to the highest bidding advertiser of the group associated withthe telephone number that the caller dialed.

Alternatively, in one embodiment, further advertisement information maybe presented to the caller on behalf of the individual advertisers,after the phone call from the caller is received and before the phonecall is forwarded/routed/connected/bridged to an advertiser, to assistthe caller in selecting an advertiser from a set of candidates. In oneembodiment, detailed, differentiating advertisements are delivered tothe callers who are already in the process of making a telephonicconnection to one of the advertisers (e.g., service providers).

In one embodiment, advertisements for the individual advertisers are tobe presented as voice/audio messages transmitted over the telephonicconnection between the server and the caller, before the server furtherconnects the call to a selected advertiser. For example, one or moreadvertisements as in the form of a pre-recorded voice message, and/orthe output of a speech synthesizer using a text-to-speech system, can bepresented to the caller over the telephonic connection.

Alternatively, in one embodiment, advertisements for the individualadvertisers are presented in a visual form to the caller through thetelephone connection, or through a separate data connection.

For example, through the telephone connection, a data stream can beprovided from the server to the user device of the caller to present adocument, or a user interface, that shows one or more listings ofadvertisers so that the user can select one to connect. For example,when the telephonic connection between the caller and the server isbased on a Voice over Internet Protocol (VoIP) system, the server canprovide the data stream to the terminal used by the caller to showadvertisements, such as displaying the advertisements within a window ofthe VoIP client application, or within a separate web browser window.

In one embodiment, a VoIP phone is designed to display messages inadditional to transmitting the voice/audio messages. For example, theVoIP phone is designed to receive and display video images or stillimages during the phone connection. Advertisements/listings can bepresented as video images or still images. For example, the VoIP phonecan be designed to receive and display data (e.g., text message, webpage, WAP page, or data of a custom application). The server can streamthe advertisement data to the VoIP phone over the connection fordisplay.

In one embodiment, the selection of the caller is transmitted to theserver as a voice/audio message. For example, according to the visualand/or the voice/audio presentation of the advertisements/listings, thecaller can make the selection using a voice command (e.g., say an IDnumber of the advertisements/listings, or the name of the listings), orpressing a key to generate an audio signal (e.g., a Dual ToneMulti-Frequency (DTMF) signal) to indicate the selection.

Alternatively, in one embodiment, the selection of the caller istransmitted in a digital form, such as a text message, a web request, aWAP request, or a request in a custom communication protocol (e.g., SIP)when a custom application is used to display theadvertisements/listings.

For example, a VoIP phone is designed to transmit data generatedaccording to user input received at the input device of the phone (e.g.,a touch screen, a keyboard, a keypad, etc.) After the caller views theadvertisements/listings during the phone call, the caller can make aselection (e.g., click) to request the connection to the correspondingadvertiser.

Further, a phone designed for a circuit switched network can also bedesigned to have at least some of the communications capabilities viathe telephonic connection discussed above. For example, a phone for acircuit switched network can have a circuitry to detect audio signalsthat represent data transmitted over the phone connection and displaythe advertisements/listings according to the data received.

In one embodiment, the advertisements/listings are presented over a dataconnection separate from the telephonic connection. For example, adata-enabled phone (e.g., a cellular phone, a mobile phone, a Bluetoothphone, a software phone, etc.) can establish a separate data connectionwith the server to allow the display of the advertisements/listings. Forexample, the data-enable phone can have an application designed todisplay the advertisements/listings when the phone number of the serveris dialed. The advertisements/listings may be pre-loaded, or downloadedafter the dialing of the phone number of the server. In one embodiment,the data connection is a two-way communication channel, which allows thephone to transmit the user selection and/or other user input (e.g.,search criteria) in a digital format.

In one embodiment, the server selectively determines one or morecandidates. A representation of the candidates is then presented to thecaller for selection/confirmation. The representation can be deliveredfor visual and/or audio presentation.

In one embodiment, the candidates are selected at least partially basedon the price bids of the advertisers. In one embodiment, the selectionof the candidates is further based on a search request of the caller.For example, the caller may ask for a particular advertiser by name; andthe server can then determine the requested advertiser and one or morealternative advertisers that are similar to the requested advertiser.For example, the caller may specify a price range charged by the serviceproviders; and the server can then determine one or more candidatesbased on the price range and price bides of the advertisers.

In one embodiment, the telephone number of the server is advertised fora group of advertisers (e.g., “Call 1-800-PLUMBER for plumbers in yourarea”, “Call 1-800-MYLOCAL for top local merchants in your neighborhood:plumbing, roofing, taxi, pizza, etc.”), and/or for the capability of theserver to determine an advertiser requested over the phone.

For example, after the caller calls the telephone number of the server,the caller may specify one or more criteria to search for a suitableadvertiser/service provider. After the search is performed, the serverpresents one or more listings/advertisements of the candidates to thephone of the caller for display. The caller can select a desired one toconnect or request more candidates. Alternatively, the candidates can beread out to the caller one at a time for the user to select. In oneembodiment, the presentation sequence, or position, of the candidatesare at least partially determined by the price bids of the candidatesfor the phone lead.

FIG. 25 shows a flow diagram of making phone connections according toone embodiment of the present invention. In FIG. 25, operation 2501presents a first advertisement including a first telephone numberreachable to a common service provided by a plurality of providersserving a common local geographic area. The advertisement may bepresented in a variety of media channels, such as web pages, emails,books, magazines, newspapers, television programs, text messages,multi-media messages, instant messages, billboards, refrigeratormagnets, etc. In one embodiment, the first advertisement does notspecifically identify any individual of the providers. In oneembodiment, the first advertisement does not specifically represent anyindividual providers. In one embodiment, the first advertisementidentifies a portion of the providers as examples. In one embodiment,the first advertisement identifies and describes the providers as awhole.

In one embodiment, the first telephone number is designed to reach avariety of callees based on a search request presented by the callerafter telephonic connection between the caller and the server isestablished.

From the plurality of providers, operation 2503 receives price bids forphone leads to be directed from the first telephone number to secondtelephone numbers of the plurality of providers. In one embodiment, theprice bids are used to rank the similar advertisers selectivepresentation to the caller of the first telephone number. For example,the price bids may be used to select the top one or two of currentlyavailable providers for presentation to the caller. The providers whoare not currently available to talk to the caller may be excluded fromthe list, or be presented after a further request from the caller.

In one embodiment, the availability information of the providers to talkto the caller is collected from the providers. For example, theproviders may specify the schedule (e.g., hours and days) for taking thecalls and/or specify the current availability information through acommunication channel (e.g., a phone line, a web page, a shortmessage/SMS message, etc.).

In one embodiment, the price bids are used to compute a rankingindicator to sort and select the top candidates for the caller.

For example, after operation 2505 receives a telephone call at the firsttelephone number from a caller, operation 2507 selectively presents asecond advertisement on behalf of an individual one of the plurality ofproviders, based at least partially on the price bids. In oneembodiment, the second advertisement is specific for an individualprovider. In one embodiment, the server may provide more or lessadvertisement/listing information depending on the preference of thecaller. For example, the server may present a list of names of theproviders, or present a list of names with brief descriptions, orpresent a list of names with discount offers from the correspondingproviders, or a present a list of names with detailed advertisements ofthe corresponding providers.

In one embodiment, the advertisements for multiple providers arepresented sequentially (e.g., as output of a speech synthesizer oneafter another, or as flash cards one after another, or as a scrollinglist), or substantially simultaneously with different positions on adisplay (e.g., as a text listing, a web page, a WAP page, etc.).

After operation 2509 receives an indication from the caller to selectthe individual one of the plurality of providers responsive to thesecond advertisement, operation 2511 connects the telephone call to atelephone number of the individual one of the plurality of providers.

Optionally, operation 2513 determines whether the telephone call is arepeated telephone call from the caller to the individual one of theplurality of providers within a time period. In one embodiment, theprovider is waived charges for leads (calls) from searchers/customerswho have called recently (e.g., within an hour, a day, a week, etc.).

Operation 2517 bills the individual one of the plurality of providersaccording to a price bid of the individual one of the plurality ofproviders (e.g., only if the telephone is not a repeated telephone callfrom the caller to the individual one of the plurality of providerswithin the time period).

In one embodiment, after a telephone call is received at a secondtelephone number from a caller, the telephone call is connected to afirst telephone number of a first entity who provides a price bid for aphone lead to be directed to the first telephone number of the firstentity. The first entity is then billed for the telephone call connectedto the first telephone number according to the price bid in response toa determination that the telephone is not a repeated telephone call fromthe caller to the first entity within a time period.

In one embodiment, after an input is received from the caller during thetelephone call, the first telephone number of the first entity isdetermined based at least partially on the input from the caller. Forexample, the input from the caller can specify one or more criteriawhich can be used to select the first telephone number from a pluralityof telephone numbers of different entities.

In one embodiment, options are displayed to the caller for the selectionof one from the plurality of telephone numbers of different entitiesduring the telephone call. For example, a list ofadvertisements/listings is transmitted to the caller for selectionduring the telephone call. The transmission may be through the sametelephonic connection between the caller and the server or a separatedata connection.

In one embodiment, one or more advertisements, including anadvertisement of the first entity, are presented individually for one ormore advertisers during the telephone call and prior to connecting, suchthat the caller has the opportunity to select one.

In one embodiment, prior to the telephone call, an advertisementincluding the second telephone number is presented on behalf of aplurality of entities as a whole on a media channel, such as in a webpage, email, book, magazine, newspaper, television program, textmessage, multi-media message, instant message, or on a billboard,refrigerator magnet, etc.

In one embodiment, the second telephone number is presented in anadvertisement on behalf of a plurality of entities. A plurality of pricebids are received from the plurality of entities, which can be used torank the advertisers in making individual presentations for theadvertisers during the telephone call. After the call is successfullyconnected to the first telephone number of the first entity, the firstentity is billed for the telephone call connected to the first telephonenumber according to the price bid, in response to the determination thatthe telephone is not a repeated telephone call from the caller to thefirst entity within the time period. In one embodiment, the time periodis predetermined and in the order of hour, day, or week.

In one embodiment, the caller can specify an indication of ageographical area of interest to the caller so that the server canselect the plurality of entities that service the geographical area ofinterest to the caller. For example, the caller can provide a zip codeover the telephone connection to indicate the geographical area to theserver.

In one embodiment, a geographical location of the caller from thetelephone call is determined to determine a geographical area ofinterest to the caller. The geographical location of the caller can bedetermined based on an Automatic Number Identification (ANI) service, acellular positioning system, or a satellite positioning system.

In one embodiment, the advertisement advertises a common serviceprovided by a plurality of entities in a specific geographic area, suchas Los Angeles.

In one embodiment, information, such as brief description, discountinformation, qualification summary, etc., is received from the firstentity and presented to the caller during the telephone call on behalfof the first entity. The caller can provide a selection indication inresponse to receiving such information.

In one embodiment, a search request is received from the caller duringthe telephone call and before the telephone call is connected to thefirst telephone number. After a search is performed according to thesearch request, the search result is selectively presented to thecaller. When the user selects an item in the search result whichcorresponds to the first telephone number, the telephone call isconnected to the first telephone number. In one embodiment, the searchresult is selectively presented on behalf of the first entity based atleast partially on the price bid.

In one embodiment, the telephone call is connected to the firsttelephone number without revealing the first telephone number to thecaller. For example, the server makes a separate phone call to the firsttelephone number and then joins the call from the caller with theseparate phone call to connect the caller and the first entity.Alternatively, the first telephone number can be provided to the callerduring the phone call so that the caller may avoid calling the secondtelephone number to reach the first entity.

FIG. 26 shows a diagram of a system to make and track phone connectionsfrom a mobile device according to one embodiment of the presentinvention.

In FIG. 26, a mobile device (2601) accesses content server A (2621),content server B (2623), content server X (2629), etc., through awireless link (2635) to a access point, such as access point A (2611),access point B (2613), and access point C (2615). In general, the accesspoints may be of different types. For example, the access point may be acellular base station, an access point for wireless local area network(e.g., a WiFi access point), an access point for wireless personal areanetwork (e.g., a Bluetooth access point), etc. The access point connectsthe mobile device to the content servers through a communication network(2619), which may include the Internet, an intranet, a local areanetwork, a public switched telephone network (PSTN), privatecommunication networks, etc.

In one embodiment, the content servers provide encoded target phonenumbers, which when dialed connect the mobile device to the phonerouter/connecter (2631) which used the database (2633) to decode theencoded information and/or store the information about the phone call inthe database (2633). The router/connecter (2631) further connects themobile device to the target phones. Alternatively, the router/connecter(2631) may dial phone calls to the mobile device and the correspondingtarget phone and then join/bridge the phone calls to connect the mobiledevice and the target phone.

In one embodiment of the present invention, location-dependent contentinformation is delivered from a content server to the mobile device. Theuser may enter the location manually (e.g., through text input or voiceinput which is processed through a speech recognition system). Thecontent information may be presented on a display screen or using anaudio channel by playing prompts or audio files or through a text tospeech system.

Alternatively, the location of the mobile device may be determinedautomatically, which is then used to determine the location-dependentcontent information. For example, the location of the mobile device maybe determined through a Global Positioning System (GPS) receiver that isconnected to, or built within, the mobile device.

A location of a cellular phone can also be determined using a methodknown as Time Difference of Arrival (TDOA) in which the reception timesof a cellular signal from a mobile station are measured at several basestations to determine the position of the cellular phone. Alternatively,a method known as Advanced Forward Link Trilateration (AFLT), orEnhanced Observed Time Difference (EOTD), can be used, which measuresthe reception times of cellular signals from several base stations tothe cellular phone. Alternatively, the cellular site in which the mobiledevice can communicate to a based station can be used to determine arough position of the cellular phone. In general, any method used by acellular phone provider to get location information (e.g., for emergencyservice) can be used.

An access point for a wireless local area network or a wireless personalarea network typically has a small coverage area. Based on the locationof the access point, location information (e.g., the city, or moreprecise location information, such as latitude and longitude) can beobtained.

Further, ANI can also be used to determine the location information.Although the location information determined from ANI may not representa correct position of a mobile device, content information about thelocation determined from ANI may still be of interest to the user.

In one embodiment of the present invention, when the user performs asearch for information which may be location dependent, the locationautomatically determined for the mobile device is used with the searchrequest. For example, when the user search for “hotels” withoutspecifying a location using an SMS-based search, the city in which themobile device is located is determined; and a pay-per-call list ofhotels in the city is sent via SMS to the mobile device.

In one example, the user may search for “dentists” in a custom clientapplication; and a custom server application provides a pay-per-calllist of “dentists” close to the current position of the mobile device.

In one example, the user may search in a web page or a WAP page for aparticular subject. The return results include one or more pay-per-calladvertisements to be presented in a browser running in the mobiledevice.

In one embodiment of the present invention, certain content informationis automatically channeled into the mobile device when the mobile deviceenters into a wireless access zone. For example, when the mobile deviceenters into a commercial district, pay-per-call lists of various nearbypoints of interest, such as hotels, movie theaters, restaurants, etc.,can be automatically presented on the mobile device, according to userpreferences.

In one embodiment of the present invention, a user may search forparticular types of experts, businesses, institutions, persons, etc.When the user is interested in calling one selected entity (e.g., anexpert, a doctor, a restaurant), the mobile device can automaticallydial the encoded phone number of the entity without the user manuallydialing the number; and the phone router/connecter decodes theinformation and connects the mobile device to the phone of the selectedentity. Alternatively, the phone number of the mobile device may bedetermined (e.g., through ANI, or user input, or user preferencesetting); and the phone connector connects phone calls to both themobile device and the phone of the selected entity to connect the userto the selected entity. In such a process, the identity of the mobiledevice may be kept anonymous from the selected entity; and/or theidentity of the selected entity may be kept anonymous from the user ofthe mobile device.

FIGS. 27-28 show flow diagrams of making and tracking phone connectionsaccording to embodiments of the present invention.

In FIG. 27, operation 2701 provides an encoded target phone number to acontent provider, where the phone number is usable to identify thecontent provider among a plurality of content providers and to identifya target phone number among a plurality of target phone numbers.

Operation 2703 transmits content information from the content providerto a user of a mobile device (e.g., through a wireless connection) wherethe content information contains the encoded target phone number. Thecontent information may include pay-per-call advertisements, lists ofexperts, lists of points of interests, etc.

After operation 2705 receives a phone call according to the encodedtarget phone number, operation 2707 determines the target phone numberand the content provider according to the encoded target phone number;and operation 2709 connect the phone call to the target phone number.

Operation 2711 records information identifying the target phone numberand the content provider for the phone call. The recorded informationcan be used to bill for advertisements and/or for making phoneconnections, provide credit/compensation for the content provider, andprovide information for fine-tuning advertisement operations.

In FIG. 28, operation 2801 starts to obtain a type of contentinformation at a mobile device (e.g., a cellular phone, a cellular phonewith a GPS receiver, a PDA, etc.)

If operation 2803 determines the content information depends on thelocation of the mobile device, operation 2805 determines locationinformation of the mobile device (e.g., through a GPS receiver,Automatic Number Identification, a cellular location server). Thelocation may be determined at the mobile station or determined at aserver station.

Operation 2807 transmits content information from a content provider toa user of the mobile device (e.g., through a wireless connection) wherethe content information contains a first phone number.

Operation 2809 dials the first phone number to make a phone call fromthe mobile device in response to a user request (e.g., voice or textinput or click). In one embodiment the mobile device dials the firstphone number without the user manually dialing the individual digits ofthe first phone number.

After operation 2811 receives the phone call at a routing station,operation 2813 determines a second phone number and the content providerfrom the first phone number dialed to make the phone call. Operation2815 dials the second phone number from the routing station to connectthe phone call to the second phone number.

Operation 2817 stores information indicating the second phone number andthe content provider for the phone call. The second phone number can beused to bill for the connection; and the content provider can becredited/compensated for providing the first phone number to the mobiledevice.

FIG. 29 illustrates a user interface for the creation of anadvertisement according to one embodiment of the present invention. Inone embodiment, the system converts the text input received from theadvertiser into an audio advertisement. In one embodiment, the audiofile for the advertisement is stored in the advertisement database;alternatively, the text input can be converted into the audioadvertisement (e.g., via a text-to-speech synthesizer) when the audioadvertisement is needed. In one embodiment, the machine synthesizedaudio recording are stored in the database for a period of time anddeleted if not used after a predetermined period of time, or when theusage of the audio advertisement is lower than a threshold.

FIG. 29 illustrates an interface (2901) which allows the advertiser todescribe an offer (or a switch pitch, or a cross sell, or someadvertising content). The advertiser can specify the business contactinformation for the advertisement, including the business name,street/mailing address, phone number and fax number. Theadvertiser/seller is encouraged to tell customers via concise marketingmessages what is being offered and why the customers should call theadvertiser/seller. For example, the advertiser is encouraged to includepromotional offers in the marketing messages to get buyers to call theadvertiser. Examples of promotional offers include: “Call today and get$5 off,” “Free consultation-limited time,” and “Call now and save 10%.”

In one embodiment, a short audio advertisement is based on the concisemarketing message (e.g., two sentences, each having a length limit, suchas 35 characters). The concise marketing message can be read by a humanto generated a recorded audio file for the short audio advertisement, orbe converted into an audio message via a text-to-speech synthesizer. Inone embodiment, the audio advertisement also includes the business name.

In one embodiment, a visual presentation of the advertisement may beused to supplement the audio advertisement. For example, the address ofthe advertisement can be presented in a visual advertisement, togetherwith additional information that is specified in the business profilepage of the advertisement. The visual component of the advertisement canbe sent to the customer via an SMS message (e.g., in response to arequest from the customer), via an email, via a custom application, viaa web/WAP page, etc.

In one embodiment, the advertisement is sent to a user device in textaccording to a pre-determined format (e.g., in XML or a custom designedformat) to allow a client application running on the user device topresent the advertisement in a custom format. For example, the clientapplication may present the short marketing advertisement in an audioform via a text-to-speech synthesize and the present a selected portionof the advertisement as an animation (e.g., present an electronic couponvia an animation). For example, a Java applet can be downloaded into thebrowser of the user to facilitate VoIP-based phone communication andperform at least part of the text-to-speech operations to enableimproved compression in transmitting audio advertisements.

In one embodiment, when an advertisement is presented to the user via aweb, the short audio advertisement can also be included; and the audioadvertisement is played automatically or after the user selects theadvertisement.

In FIG. 29, the interface (2901) may be implemented as a web page.Alternatively, an advertisement may submit the advertising content via acustom client application, or via a message gateway (e.g., an instantmessage, an email, an SMS message, etc.).

One embodiment includes a speed-dial feature on a mobile phone forconnecting the mobile phone to an advertiser of a Pay Per Calladvertisement. In one embodiment, the interface of a cellular phone isdesigned to have one or more buttons configured for accessingfrequently-used services, such as Taxi, Pizza, Florist, Plumber,Electrician, Dentist, etc. In one embodiment, the buttons are static,permanent part of the dial interface for convenient access by the mobileuser. The speed-dial buttons can be implemented in software, hardware orin combination of software and hardware.

In one embodiment, when a user activates a pre-configured speed-dialbutton on a cellular phone, the user is connected to the highest-biddingpay-per-call advertiser in the category (e.g., Taxi, Pizza, Florist,Plumber, Electrician, or Dentist) using the cellular phone. In oneembodiment, the advertiser is selected based not only on the bid pricesof pay-per-call advertisements but also on other conditions such asgeographic area, preferences of the user, etc.

In one embodiment, additional information, such as the user's age,demographics, psychographics, preferences, etc., can also be providedfrom the mobile device (or from the telecommunication carrier of themobile device) to the connection provider so that the mobile user can beconnected to the best matching advertiser/merchant/service provider.

In one embodiment, the advertiser is selected based at least in part onmatching the geographic service area of the advertisers to the need(implied or explicitly specified) of the user. For example, thegeographic location information of the cell tower that is incommunication with the cellular phone can be used to determine ageographic area in which the user needs the service; and the determinedgeographic area can be used in selecting the advertiser to which thecellular phone is to be connected. In one embodiment, the mobile devicecollects the geographic area information of the cell tower and passesthis geographic area information with the service category to aconnection provider for a connection to a selected advertiser.Alternatively, cell tower can be configured to pass this geographic areainformation to the connection provider. Alternatively, a cellularcommunication carrier can pass this geographic area information to theconnection provider.

In one embodiment, the desired geographic service area is determinedbased on the phone number of the caller (e.g., determined via anAutomatic Number Identification (ANI) service). In one embodiment, theuser is connected to an Interactive Voice Response (IVR) system, whichprompts the user to say or enter the zip code of the desired geographicservice area.

In one embodiment, the mobile device can communicate with the connectionprovider using Internet Protocol (IP); and an IP address associated withthe mobile device can be used to determine/estimate the desiredgeographic service area. For example, when the mobile device places aSIP call to the connection provider (e.g., via a connection to a localarea network, a local area wireless network, or a wide area wirelessnetwork, etc.) in response to the selection of a speed-dial button, theIP address of the mobile device used for placing the SIP call can beused to estimate the geographic area in which the service is desired.

In one embodiment, the cellular phone uses the data communicationcapability to transmit the geographic area information, the selectedservice area, and/or other user preferences for the selection of theadvertiser; and the data communication capability is distinct andseparate from the telephone connection. Alternatively, the data can betransmitted via a telephone connection between the mobile device and theconnection provider (e.g., via Dual Tone Multi-Frequency (DTMF)signals). Alternatively, the data can be an integrated part of aVoIP-based call.

In one embodiment, different service categories are assigned differenttelephone numbers without extensions. When different service categoriesare selected, different telephone numbers are called; and the connectionprovider determines the service categories based on the telephonenumbers dialed at the mobile phone. Alternatively, different extensionscan be used to indicate the different service categories.

In one embodiment, the mobile phone is configured to combine a number ofdata fields, such as the selected service category, the desiredgeographic service area, and/or other preferences of the mobile user, togenerate an extension which is to be decoded by the connection providerto recover the respective data fields.

In one embodiment, a connection server is configured to provide aconfirmation prompt to ensure that the user is being routed to theservice in the proper geographic area. For example, the connectionserver may be designed to provide the prompt: “You are about to beconnected to a taxi provider in the X region. To select a differentregion, press #.”

In other embodiments, the call placed via the speed-dial feature isconnected first to an IVR of a connection provider, which allows theuser to specify further criteria for the selection of the advertiser.For example, the IVR system may prompt: “For general-hygiene dentists,press 1. For oral surgeons, press 2 . . . ”.

In one embodiment, the connection provider also has a database ofservice providers who are not bidding advertisers in the servicecategories. When there is no matching bidder in a particular category(e.g., service providers in a selected category in the geographicservice area of interest to the mobile user), one of the serviceproviders who are not bidding advertisers can be selected. Thus, theconnection provider can connect the user to a suitable merchant in thatcategory even though they are not an advertiser. The system can fill itsdatabase with such merchants to ensure that the system has the fullcoverage in various categories and geographies and to ensure that thespeed-dial buttons provide a useful service to the end user.

In one embodiment, static head ends to categories of Pay Per Calladvertisements are presented on other telephony devices, such as a VoIPterminal, a landline phone, a WiFi phone, a USB phone, a cordless phone,a softphone, etc. The static head ends provide a speed-dial feature foraccessing the advertisers of the corresponding categories.

FIG. 30 illustrates a method to connect the user of a mobile device toan advertiser according to one embodiment of the present invention. InFIG. 30, a mobile communication carrier (3001) provides short cuts toaccess categories of services on a mobile phone (3003).

In one embodiment, the short cuts can be provided in the form ofdedicated switches (e.g., hardware buttons) pre-configured to dial a setof phone numbers that are associated with the pre-defined servicecategories. Alternatively, the short cuts can be configured as a static,integrated part of user interface elements displayed as a part of dialinterface on the screen of the mobile phone.

For example, different phone numbers that are assigned by the connectionprovider to different groups of service providers can be pre-configuredfor the dedicated switches on the mobile phone, such that when aspeed-dial switch is activated, the mobile phone dials thepre-configured telephone number assigned by the connection provider.

In one embodiment, the dedicated switches are pre-configured by themobile communication carrier; and the mobile user is not provided meansfor re-configure the dedicated switches. Alternatively, the dedicatedswitches may be re-configured (programmed) by the mobile user forspeed-dial a user supplied number.

In one embodiment, the mobile user is limited to re-configuring adedicated switch for dialing a phone number selected from a set of phonenumbers assigned by the connection provider for accessing a pre-definedcategory of service. Alternatively, the dedicated switch may bere-configured to dial any number specified by the mobile user.

In one embodiment, the user interface element for the speed dial featureis at least partially implemented via software. For example, a set ofbuttons displayed on a screen of the mobile device can be used to selectthe desired category and place the speed dial. The buttons displayed onthe screen can be activated via the touch screen, or via one or morenavigation switches implemented on the mobile device, or via a dial padof the mobile phone. For example, the buttons displayed on the screenmay have associated short cut keys which when pressed activate thecorresponding button.

In one embodiment, when the speed dial button is selected, the phonenumber assigned by the connection provider (3005) is dialed by themobile phone (3003) for a telephone connection between the connectionprovider (3005) and the mobile phone (3003). Based on the telephonenumber dialed by the mobile phone and/or other input from the mobilephone (e.g., an extension dialed by the mobile phone or a data packetsent from the mobile phone to specified the desired geographic areaand/or other user preferences/information), the connection provider(3005) selects an advertiser (3009) based on the database (3007). In oneembodiment, the geographic area information and/or userpreferences/information are determined or looked up based on theidentity of the mobile phone (3003); and thus, the mobile phone does nothave to further provide the information for the call.

For example, in one embodiment, a communication reference (3017), suchas a telephone number (e.g., a telephone number with an extension, or atelephone number without an extension, a SIP URL, a VoIP telephonicreference, etc.), is used to identify the service category (3011). Whenthe communication reference (3017) is used to make the telephoneconnection between the connection provider (3005) and the mobile phone(3003), the connection provider (3005) can limit the selection of theadvertiser (3009) within the advertisers (3013) and non-advertisers(3015) that provide services in the service category (3011). The currentavailability of the service providers to take the call, the desiredgeographic service area, the user's age, demographics, psychographics,and/or other preferences can be used to narrow the search. In oneembodiment, the highest bidding advertiser in the matchedadvertisers/non-advertisers is selected for the connection. When thereis no matching bidding advertisers, a non-advertiser can be selected(e.g., randomly, or using a rating scheme based on customer feedback,etc.) In another embodiment, the matched advertisers/non-advertisers areranked according to the potential earnings that can be generated fromconnection the call to the corresponding advertisers.

In one embodiment, when the selected service provider is anon-advertiser, the connection provider (3005) forwards the call to theselected non-advertiser; when the selected service provider is anadvertiser, the connection provider (3005) places a separate call to theadvertiser (3009) and bridges/conferences the separate call to theadvertiser (3009) and the call from the mobile phone.

In one embodiment, when the speed dial button is selected, the mobiledevice initiates the call to the connection provider (3005) using thecommunication references (3017) that is pre-configured with the speeddial button. Alternatively, when the speed dial button is selected, themobile device may send a data packet to the connection provider (3005),via a data connection, to request a callback to the mobile phone (3003).For example, the data packet may be sent via an HTTP (HyperText TransferProtocol) request, an SMS message, an instant message, etc. In responseto the data packet, the connection provider (3005) initiates a call tothe mobile phone (3003) for a connection between the mobile device andthe connection provider (3005).

In one embodiment, the connection provider (3005) receives informationneeded to select the advertiser (3009) from the data packet, selects theadvertiser (3009) and optionally presents the advertisement of theadvertiser (3009) to the mobile phone, before calling back the mobilephone. In one embodiment, the connection provider (3005) presents one ormore matching service providers to the mobile phone with correspondingadvertisements. The mobile user can select the advertisement to requesta call to the corresponding advertiser.

In one embodiment, a non-advertiser is presented with an advertiser; andthe mobile user may be charged a fee for connecting to the presentednon-advertiser; and the mobile user may be connected to the presentedadvertiser for free. In one embodiment, the connection provider (3005)pays for the cost that the mobile communication carrier (3001) chargesfor the call if the mobile user is connected to an advertiser.Alternatively, the mobile user is free of charge for using the speeddial button to make a connection to a service provider, regardlesswhether the service provider is an advertiser or a non-advertiser.

Alternatively, the connection provider (3005) connects the mobile device(3003) to an IVR system to obtain further input to select theadvertiser, and then optionally presents the advertisement to the mobilephone.

In one embodiment, a speed-dial button is configured for accessing adirectory assistance service provided by the connection provider (3005).During the directory assistance call, the service category isidentified; and a service provider is selected based on the identifiedservice category and/or other criteria. Alternatively, at least aportion of the search criteria is pre-configured as part of thespeed-dial button.

FIG. 31 illustrates a user interface which allows a user of the mobilephone to request a telephone connection to a service provider of aselected category according to one embodiment of the present invention.In FIG. 31, the mobile phone (3101) includes a number of switches (e.g.,3111) and a display screen (3103). In one embodiment, the mobile phone(3101) includes a set of switches which form a keyboard that is suitablefor thumb typing. In another embodiment, the set of switches include adial pad and a number of function keys. In one embodiment, the displayscreen (3103) is touch sensitive, such that a button (or other types ofuser interface elements, such as a hyper link) displayed on the screencan be selected via a touch at the corresponding area.

In FIG. 31, a dial pad (3105) is displayed on the screen (3103) as apart of the dial interface for placing a phone call. In the dialinterface as show in FIG. 31, a set of buttons (e.g., 3109) are alsodisplayed as speed dial buttons for pre-defined service categories. Forexample, when the button (3109) is selected, the mobile phone (3101) isconnected to a connection provider (e.g., 3005) which then selects aservice provider based on bid prices of pay per call advertisements, thegeographic area in which the mobile phone (3101) is currently in, and/oruser information/preferences.

In one embodiment, the speed dial buttons (e.g., 3109) are designed as astatic, permanent part of the dial interface. In one embodiment,different speed dial buttons can be displayed when the user customizesthe dial interface via the selection box (3107). In one embodiment, themobile user can configure the dial interface to hide the dial pad andshow a selected image in its place. In one embodiment, the mobile usercan configure the dial interface to hide the dial pad and show morespeed dial buttons in its place.

In one embodiment, some of the speed dial buttons can be reconfigured bythe user for other purposes (e.g., for launching an application, forvisiting a web page, etc.). In one embodiment, at least one of the speeddial button that is displayed on the dial interface is reserved foraccess a pre-defined category. In one embodiment, the user canre-configure the category of the speed dial button by selecting acategory from a set of pre-define categories. In one embodiment, themobile user can enter a user defined category, which is to be submittedto the connection provider as a keyword when the speed dial button isselected.

In one embodiment, the speed dial buttons can be configured to havekeyword short cuts so that when one or more keys are pressed in apre-defined way the corresponding speed dial button is selected.

In one embodiment, the categories for the speed dial buttons areassigned to the speed dial buttons displayed on the screen according tothe usage patterns of the mobile device. For example, frequentlyrequested categories can be displayed first. The usage frequency may bebased on usage patterns of the mobile device (3101), or based on a setof mobile users who have a similar profile. In another embodiment, thecategories for the speed dial buttons are randomly assigned to the speeddial buttons displayed on the screen when the dial interface isdisplayed.

In one embodiment, a panel of speed dial buttons contains more speeddial buttons than that can be displayed concurrently on the screen(3103), together with the dial pad. In one embodiment, the speed dialpanel can be scrolled to reveal a selected portion of the panel. In oneembodiment, the speed dial panel can moved up temporary to cover thedial pad (3105) and show more speed dial buttons in its place.

FIG. 32 illustrates a user interface to guide a user through the processof connecting to a service provider according to one embodiment of thepresent invention. In FIG. 32, a message (3205) is displayed on themobile phone after the user selects a speed dial button for taxi. Afterthe connection provider determines the geographic area “San Francisco”for the mobile phone and selects the taxi provider “Metro Cab”, amessage of “Connecting to Metro Cab in San Francisco Area. Please waitfor the connection . . . ” is displayed. In one embodiment, the data forthe message is provided to the mobile device via a data connection whilethe mobile device is connected to the connection provider (e.g., 3005).

In FIG. 32, the mobile phone further displays buttons “service provider”(3201) and “location” (3203) to allow the mobile user to switch theconnection to a different taxi provider and/or a taxi provider in adifferent geographic area.

For example, after viewing the message of “Connecting to Metro Cab inSan Francisco Area . . . ”, the mobile user may not want to be connectedto “Metro Cab”. Thus, the mobile user can select the button “serviceprovider” (3201) to request the connection provider to select adifferent taxi provider for the connection.

For example, if the mobile user wants to talk to a taxi provider in anarea different from “San Francisco”, the mobile user may select thebutton “location” (3203). In response to the user selecting the button“location” (3203), the mobile user can be connected to an IVR system toprovide an indication of the desired location, or be presented with auser interface to specify the location (e.g., via typing in the zipcode, or city name in an entry box, or via selecting an area from a mapsubsequently displayed on the screen of the mobile phone).

In one embodiment, when one of the buttons (3201 and 3203) is selected,the mobile device dials a string of pre-defined number to communicatethe selection to the connection provider via the telephone connection.Alternatively, the selection can be transmitted to the connectionprovider via a separate data communication channel, or as part of theVoIP call to the connection provider.

FIG. 32 illustrates an example of guiding the mobile user through theconnection process via visual feedback. Alternatively, or incombination, the connection provider can also guide the user viaaudio/voice messages.

FIG. 33 illustrates another method to guide a user through the processof connecting to a service provider according to one embodiment of thepresent invention. In FIG. 33, the mobile phone displays the phonenumber dialed via the speed dial button and the connection status(3305). Button “Hang Up” (3301) displayed on the screen of the mobiledevice can be selected to hang up the call; and button “Speaker” (3303)can be selected to turn on speaker (3303) (e.g., turning the mobilephone into a speaker phone). After the connection provider receives thecall placed via the speed dial button, the connection provider plays amessage (3307) to confirm the geographic area and provides the mobileuser with the opportunity to select a different geographic area bypressing the “#” key.

FIG. 34 illustrates a method to determine a location of the desiredservice via a map before initiating a call to service provider accordingto one embodiment of the present invention. In FIG. 34, the location ofthe desired service can be specified via a map (3403) displayed on themobile device. For example, after the user selects the speed dial button(e.g., 3109 in FIG. 31) for taxi, the map (3403) can be displayed todetermine the desired pickup location. Once the user selects the desiredpickup location (e.g., 3405) using the map (3401), the user can selectthe button (3401) to place the call. Alternatively, the call is placedin response to the user selecting a location; and during the call, themap and an indication of the selected location (e.g., pin 3405) aredisplayed to allow the user to modify or specify the pickup location.

In one embodiment, both the display of the map (3403) and the placing ofthe call are in response to the selection of the speed-dial button; andan input via the map (3403) is optional. For example, when an input viathe map (3403) is received, the geographic location information is usedto select the service provider and/or provided to the selected serviceprovider as part of the service request. When no input is received viathe map (3403), the geographic area information can be determined viaother methods, such as a GPS receiver integrated with the mobile device,a cellular tower or access point in communication with the mobiledevice, a telephone number or IP address of the mobile device, input toan IVR system, etc.

For example, the user selected location (e.g., 3405) is used not only toselect the taxi provider but also to inform the taxi provider thedesired pickup location on behalf of the mobile user. For example, theconnection provider can pass the pickup location specified by the userto the taxi provider and thus simplify the process of ordering taxiservice.

In FIG. 34, the mobile user selects the button (3401) displayed with themap (3403) to initiate the call (or request a callback). Alternatively,the map (3403) is displayed while the call is being dialed. Thus, theuser can optionally use the map (3403) to select a geographic location.

In one embodiment, the map (3403) is further used to display thelocation of the service provider after the service provider is selected.For example, after the selection of the service provider, arepresentation of the service provider can be displayed on the map(3403). For example, an advertisement from the selected service providercan be presented on the map (3403) or be presented with the map (3403).

FIG. 35 illustrates a display of favorites for accessing serviceproviders of selected categories according to one embodiment of thepresent invention. In FIG. 35, no dial pad is displayed; and more speeddial buttons (e.g., 3501) are displayed. In the dial interfaceillustrated in FIG. 35, the user can select one of the speed dialbuttons to place a call, or directly enter a phone number via thekeyboard (3503) to place a call.

FIGS. 36-37 show examples of editing preferences of favorites foraccessing service providers of selected categories according toembodiments of the present invention.

FIG. 36 illustrates an interface for editing the preferences for speeddial button (3109) of FIG. 31. In FIG. 36, the type of action to beperformed in response to the selection of the speed dial button and thelabel (and thus, the associated phone number/service category) arefixed. The user cannot change the type of action and the labelassociated with this speed dial button (3109). However, the user mayselect a user specified short cut key (3601) for quick access to thespeed dial button (3109). For example, when the user specifies “1” asthe short cut key, the speed dial button (3109) displayed on the screencan be activated by pressing and hold key “1” (or double clicking key“1”, or clicking key “1” and waiting for a short time period withoutpressing other keys). Since the label and the action type cannot beredefined by the user, the speed dial button for a specific category ofservice is a static, permanent part of the dial interface.

In one embodiment, while the action type and the label of the speed dialbutton are not changeable by the mobile user, the action type and thelabel can be dynamically changed by the carrier of mobile communicationservices, or by the mobile device according to a set of pre-configuredrules. For example, when the mobile device is turned on, data specifyingthe action type and the label for the speed dial button can be retrievedfrom the carrier of the mobile communication services, such that theconfigurations of the speed dial buttons can be periodically updated bythe carrier. For example, the mobile device may be configured to sortthe speed dial buttons according to their usage patterns.

In one embodiment, the action type and/or the label can be selected froma set of pre-defined options for accessing categories of services.

FIG. 37 illustrates another interface for editing the preferences forspeed dial button (3109) of FIG. 31. In FIG. 37, the mobile user canspecify the action to be taken as “speed search”. In one embodiment, themobile user can also change the action to “speed dial”. In oneembodiment, the selection of the action is limited to access a categoryof service providers.

In FIG. 37, when the speed dial button is assigned the action of “speedsearch”, the selection of the speed dial button causes the mobile deviceto submit a search request for a service provider based on the criteriaspecified in the interface shown in FIG. 37.

For example, the label entry (3703) can be used to specify the servicecategory for the search request. In one embodiment, the user is allowedto enter a keyword specified by the user for the speed search; inanother embodiment, the label (3703) is to be selected from apre-defined set of keywords.

In FIG. 37, the mobile user can specify a short cut key (3705) for quickaccess to the speed dial button using a keyboard. The mobile user mayspecify the number of desired search results using the entry box (3707).

In one embodiment, if the mobile user specifies that one result isrequested using the entry box (3707), the mobile user can beautomatically connected to the service provider presented in the searchresult.

To pre-define the search, the user may indicate that the geographiclocation for the search is to be determined as the current geographiclocation of the cell phone. Alternatively, the user may specify thedefault geographic location using a zip code, a telephone number, acoordinate, a GPS position, etc.

In one embodiment, the search result is presented to the mobile userbefore a phone connection to the connection provided is initiated. Forexample, the search may be submitted via an SMS message, and the searchresult is received via an SMS message. In one embodiment, the searchresult includes the advertisement for the selected advertiser and thephone number assigned to the advertiser/advertisement; and thus, theuser can select one of the advertisements to initiate the call to theselected advertiser.

In another embodiment, the search result is presented to the mobile userover the phone connection to the connection provider. For example, afterthe speed dial button is selected, the search request is provided to theconnection provider within, or with, the call to the connectionprovider. The connection provider connects the mobile phone to an IVRsystem, which reads the search results to the mobile user (e.g., via atext to speech synthesizer, or via playing back one or more pre-recordedaudio clips) and prompts the user to select a service provider for theconnection (or confirm a service provider selected by the connectionprovider).

FIGS. 38-40 illustrates other user interfaces for accessing serviceproviders of selected categories according to embodiments of the presentinvention.

In FIG. 38, the speed dial buttons are presented as a bar (3801) on thedial interface displayed on the screen of a mobile device. In oneembodiment, the speed dial buttons can be implemented on a tool bar of asoftware application.

In FIG. 39, speed dial buttons (e.g., 3901) are presented as part of thedial interface of a softphone (e.g., a VoIP software client applicationrunning on a personal computer). In one embodiment, the user interfaceelements for the speed dial feature can also be implemented ashyperlinks, icons, image maps, etc., which can be presented on a toolbar, or within a frame or panel.

In FIG. 40, speed dial buttons (e.g., 4005) are pre-configured as partof the dial interface of a desktop phone (4001). In one embodiment, thebutton (4005) is dynamically associated with a label (and thus a servicecategory) based on the programmable display (4003). Alternatively, thebutton (4005) can be pre-configured and fixedly associated with aservice category.

FIG. 41 illustrates a method to connect a user of a telephony device toa selected service provider of a predefined category according to oneembodiment of the present invention. In FIG. 41, a user interfaceelement is provided (4001) on a dial interface of a telephonic device torepresent a communication reference associated with a pre-definedcategory of services. Responsive to a user selection of the userinterface element, a request from the telephonic device is initiated(4003) using the communication reference for a telephone connection to aservice provider of the pre-defined category.

In one embodiment, the service provider is to be selected from aplurality of service providers of the pre-defined category in responseto the request; and the service provider is to be charged in response toa telephone lead connected to the service provider. In one embodiment,the telephonic device includes a cellular phone.

In one embodiment, a location of the cellular phone is furtherdetermining; and the service provider is selected based at least on thelocation of the cellular phone and a price specified by the serviceprovider.

In one embodiment, the location of the cellular phone is determined inresponse to the request. The location of the cellular phone can bedetermined according to a location of a cell tower in communication withthe cellular phone, via an interactive voice response (IVR) system,according to a phone number of the cellular phone, based on an InternetProtocol (IP) address associated the cellular phone, or based on a mapdisplayed on the cellular phone.

In one embodiment, the user interface element includes a display of thepre-defined category of services on a screen of the cellular phonetogether with the dial interface. The dial interface may include adisplay of a dial pad on the screen of the cellular phone. In oneembodiment, the user interface element is static as a permanent part ofthe dial interface.

In one embodiment, the user interface element is selectable via pressingless than four switches on the cellular phone after the dial interfaceis displayed. Preferably, the user interface element is selectable viapressing less than three switches on the cellular phone after the dialinterface is displayed. Preferably, the user interface element isselectable via pressing one switch on the cellular phone after the dialinterface is displayed.

In one embodiment, the request includes dialing a call according to thecommunication reference; and the communication reference includes oneof: a telephone number without an extension, a telephone number with anextension, a Voice over Internet Protocol (VoIP) telephonic reference,and a Session Initiation Protocol (SIP) Universal Resource Identifier(URI).

In another embodiment, the request initiated from the telephonic deviceincludes a request for a callback to the telephonic device for aconnection with the service provider.

In one embodiment, an advertisement for the service provider is receivedresponsive to the request, where the advertisement includes a telephonicreference and the service provider is to be charged for theadvertisement based on telephone calls connected to the advertiser.

In one embodiment, the advertisement is displayed while connecting thecellular phone to the service provider. In another embodiment, a call isplaced to the service provider according to the telephonic referenceresponsive to a user selection of the advertisement.

In one embodiment, responsive to the request initiated from thetelephonic device, a connection provider establishing a first Voice overInternet Protocol (VoIP) call with a telecommunication carrier whichbridges the first VoIP call to cellular phone; the connection providerestablishing a second Voice over Internet Protocol (VoIP) call with atelecommunication carrier which bridges the second VoIP call to a publicswitched telephone network (PSTN) to the service provider; and the firstand second VoIP calls are then connected, joined, or conferenced toconnect the mobile user and the service provider. In one embodiment, afirst virtual softphone of the telecommunication carrier bridges thefirst VoIP call to the cellular phone; a second virtual softphone of thetelecommunication carrier bridges the second VoIP call onto a publicswitched telephone network (PSTN) to the service provider; and theconnecting the first and second VoIP calls includes directing the firstand second softphones to establish a direct media connection which doesnot go through the connection provider.

In one embodiment, a connection provider uses a connection serverconfigured on a packet switched network to provide telephone connectionsbetween callers (e.g., customers) and callees (e.g., advertisers), asillustrated in FIG. 42. In FIG. 42, the connection server (4207)receives and/or places telephone calls via the telecommunication carrier(4205) over the packet switched network (4209). The telecommunicationcarrier (4205) further routes the telephone communications towards thecaller (4201) and the callee (4203).

Since the telecommunication carrier (4205) can route a call from apacket switched network to a variety of destinations (e.g., atraditional analog telephone set, a mobile phone, a cellular phone, aWiFi phone, a Bluetooth phone, a softphone running on a computer, etc.),the connection sever (4207) can use one type of communication connectionwith the telephone carrier (4205) to facilitate the communicationconnections with variety of devices used by the customers (e.g., callersand callees). Thus, the implementation of the connection server (4207)can be simplified. In one embodiment, the connection server (4207) canalso place and/or receive direct VoIP calls to/from the caller (orcallee).

For example, to make a voice connection in response to a click-to-callrequest, the connection server can place separate VoIP calls, via thetelecommunication carrier (4205), to the caller (4201) (e.g., therequester of the click-to-call) and the callee (4203) (e.g., thedestination of the click-to-call request).

If the caller (4201) (or the callee 4203) is on a public switchedtelephone network (PSTN), the telecommunication carrier (4205) bridgesthe packet switched the network and the public switched telephonenetwork (PSTN). The telecommunication carrier (4205) routes the callfrom the packet switched network (4209) to the caller (4201) (or thecallee 4203) on the circuit switched network. Thus, the caller (4201)(or the callee 4203) can use a telephone set to receive the call via aPlain Old Telephone Service (POTS). The connection server (4207) joinsthe separate calls that are placed via the packet switched network(4209) to connection the callee (4203) and the caller (4201).

In one embodiment, call signaling and media content may use differentnetwork paths. While call signaling is arranged to go through the packetswitched network (4209) and the connection server (4207), the mediastream does not have to go through the connection server (4207). Forexample, when the calls are joined, the media content may be redirectedto flow over the communication carrier (4205) without going through thepacket switched network (4209) to the connection server (4207) forimproved performance and efficiency. The connection server (4207) canrelease the control over the media stream to allow the media stream toflow through the shortest path, without going through the connectionserver, while maintaining control to the connection for the call bystaying on the path for call signaling.

In another example, when the caller (4201) initiates a call over a PSTNto the connection server (4207), the telecommunication carrier (4205)converts the call for the packet switched network (4209) for theconnection server (4207).

In one embodiment, virtual softphones on the telecommunication carrier(4205) are assigned to the caller (4201) and the callee (4203) forinterfacing with the connection server (4207) over the packet switchednetwork (4209). The virtual softphones encapsulates the devices andnetworks used by the caller (4201) and callee (4203) to access theconnection server (4207); and the telecommunication carrier (4205)shields the connection server (4207) from the implementation details ofthe user devices and networks used by the caller (4201) and the callee(4203). The connection server (4207) calls (or receives calls from) andconnects the virtual softphones on the telecommunication carrier (4205)to connect the caller (4201) and the callee (4203).

In FIG. 42, the telephone connection between the telecommunicationcarrier (4205) and the connection server (4207) is facilitated via apacket switched network (4209). Thus, the connection server (4207) canoperate efficiently in a digital domain. The connection server (4207)interfaces with the telecommunication carrier (4205) using one type ofInternet Telephony systems (e.g., SIP-based Internet telephony).

Alternatively, a connection server may include some or all of thefunctionality of the telecommunication carrier (4205). For example, theconnection server may be configured to bridge a packet switched networkand a circuit switched network. The connection server may supportmultiple, different types of Internet Telephony systems.

In one embodiment, the connection server (4207) and thetelecommunication carrier (4205) are operated by different, separateentities. Alternatively, the connection server (4207) and thetelecommunication carrier (4205) may be operated by the same entity. Inanother embodiment, the telecommunication carrier (4205) includes a setof facilities operated by a number of separate entities.

In one embodiment, the caller (4201) and/or the callee (4203) may alsoplace/receive calls via a packet switched network. The telecommunicationcarrier (4205) may route the calls between the caller (4201) and thecallee (4203) without using a PSTN. In one embodiment, caller (4201)and/or the callee (4203) may place calls to or receive calls from theconnection server (4207) via Internet.

FIG. 43 shows a connection server according to one embodiment. In FIG.43, the connection server (4305) is configured to place and/or receiveVoIP calls using Session Initiation Protocol (SIP). A session bordercontroller (4301) is used to interface with the packet switched network(4303) and control the types of network traffic related to VoIP callsthat might go into the connection server (4305).

In one embodiment, the session border controller (4301) is configured tocontrol the signaling and media stream during the setting up, conductingand tearing down of VoIP calls to or from the connection server (4305).In some embodiments, the session border controller (4301) may pick upthe call that comes to the session border controller (4301), places aseparate call from the session border controller (4301), and joins thereceived call and the placed call to control both the signaling andmedia stream. In some embodiments, the session border controller (4301)may perform signaling/encoding translation to allow the connectionserver (4305) to process the VoIP calls in one standard, while receivingVoIP calls in a variety of standards (e.g., SIP, H.323, etc.). In oneembodiment, the session border controller (4301) is configured toperform one or more firewall functionalities, such as denial of serviceprotection, call filtering, bandwidth management, etc.

In one embodiment, the session border controller (4301) is configured toperform media releasing operation. When the session border controller(4301) determines that the source and destination of a media stream ison the same side of the session border controller (4301) (e.g., both thesource and the destination of the media stream is outside the connectionserver 4305), the session border controller (4301) can release thehairpining of the media stream and allow the media stream to flowwithout going through the session border controller (4301).

In FIG. 43, a set of SIP servers (e.g., 4311, 4313, . . . , 4319) arenetworked to the session border controller (4301) to receive messagesfor incoming calls and to initiate outgoing calls. The session bordercontroller (4301) is configured to evenly distribute the calls forprocessing by the SIP servers.

For example, when an incoming message for the initiation of a call isreceived (e.g., a SIP INVITE message from the telecommunication carrier4205), the session border controller (4301) may route it to a SIP server(e.g., 4311) for processing. The INVITE message includes the phonenumber dialed by the caller and the contact information about the caller(e.g., the phone number of the caller 4201 and/or the identity of thevirtual SIP phone at the telecommunication carrier 4205).

The SIP server may determine whether the phone number dialed by thecaller (4203) is sufficient to determine the phone number of the callee(e.g., 4203). If the phone number of the callee (e.g., 4203) can bedetermined from the phone number dialed by the caller (4203) (e.g., viadecoding the phone number dialed by the callee, or looking up the phonenumber of the callee from a table using the phone number dialed by thecaller as a key), the SIP server can place a separate SIP call to thecallee via the packet switched network (4303) and then connect thecaller and the callee. Alternatively, the SIP server can further routethe SIP INVITE message (e.g., to the telecommunication carrier (4205) todirect the call to the callee. For example, the SIP server may modifythe INVITE message by replacing the destination with the determinedphone number of the callee. Further, the SIP server can modify theINVITE message by removing the phone number of the caller (or replacingthe phone number of the caller with a phone number of the connectionserver). In one embodiment, the modified INVITE message identifies thevirtual softphone corresponding to the caller on the telecommunicationcarrier as the SIP phone initiated the call; thus, the virtual softphonecorresponding to the callee on the telecommunication carrier canestablish media connection with the virtual softphone corresponding tothe caller on the telecommunication carrier directly. Alternatively, themodified INVITE message may identifies a media server (4321) (or avirtual softphone on SIP server) as the initiator for a separate call.The SIP server then connects the calls for the media stream.

In one embodiment, the caller is first connected to a media server(e.g., 4321, 4323, or 4329). For example, the SIP server may forward theSIP INVITE message to one or more of the media servers for answering thecall. When a media server (e.g., 4321) answers the call, a prompt isplayed to the caller by the media server. The media server may includean Interactive Voice Response (IVR) system, or be connected to an IVRsystem, to obtain input from the caller.

For example, the media server may prompt the caller to enter theextension assigned to the callee, such that the phone number of thecallee can be determined based on the phone number including theextension dialed by the caller. In some embodiments, the extensiondialed by the caller is sufficient to determine the phone number of thecallee. After the phone number of the callee is determined, the SIPserver can further connect the call to the callee.

For example, the media server can send a message to the SIP server. Themessage identifies the call and the extension obtained from the caller.The SIP server then determines the callee's phone number based at leaston the extension received from the media server and initiates a SIP callvia the packet switched network (4303) (e.g., by sending a SIP INVITEmessage to the telecommunication carrier 4205, which further bridges thecall to the callee 4203). Then, the SIP server disconnects the mediaserver from the call and reconnects the call to the callee.

For example, the SIP server can send a SIP BYE message to the mediaserver to disconnect the media server from the call (e.g., by sending a“BYE” message to the media server for the call) and send a re-INVITEmessage towards the caller to connect the caller and the callee.Alternatively, the media server may send a SIP BYE message to the SIPserver for the call; the BYE message may include the extension obtainedfrom the caller; in response to the BYE message that contains theextension, the SIP server determines the phone number of the callee andfurther connects the caller to the callee.

In one embodiment, the SIP server can direct the caller and the calleeto connect to each other for the media stream without having the mediastream going through the session border controller (4301) into theconnection server (4305). For example, the media stream can go throughthe telecommunication carrier (4205) in FIG. 42 without going to theconnection server (4207) after the SIP server connects the caller andthe callee.

However, the SIP server stays on the signaling path to monitor theprogress and termination of the call. The SIP server can also break theconnection between the caller and the callee, or force the media streamto come through the connection serve (4305). For example, the SIP servermay selectively conference a media server into the call to monitorand/or record the communication of the call between the caller and thecallee. For example, the SIP server may reconnect the caller and thecallee to separate media servers for interaction with an IVR system or ahuman operator to confirm a deal or transaction.

Similarly, the SIP server may initiate a callback to a caller via a SIPcall over the packet switched network (4303) for a connection to thecaller. The SIP call may be bridged onto a circuit switched network(e.g., by a telecommunication carrier 4205). The SIP server can thenreconnect the call to a media server for sending a prompt to the callerbefore reconnect the call to the callee. Alternatively, the callback canbe initiated from a media server; and the call signaling (e.g., theINVITE message from the media server) goes through the SIP server forcall control. Alternatively, the SIP server sends out the INVITE messageon behalf of the media server.

In one embodiment, the SIP servers (4311, 4313, . . . , 4319) and mediaservers (4321, 4323, . . . , 4329) are implemented on separate computersconnected via a local area network (and/or intranet or Internet).Alternatively, at least the some of the servers can be implemented on asame computer. In one embodiment, the SIP servers and the media serversare also integrated with the session border controller (4301) on a samedata process system having multiple processors coupled with a data bus.In one embodiment, the SIP servers are coupled to the media servers viaa network; and a SIP server may use any of the available media serverfor interaction with the caller (or callee). Alternatively, a SIP servermay be configured to use one or more of media servers that are notshared by other SIP server. For example, a SIP server may be implementedon a same data processing system with one or more media servers whichare reserved for the SIP server.

In one embodiment, the connection server (4305) may further include adatabase server (4305) to storing records related to the calls, datamapping between the communication references assigned to the callees andthe actual phone numbers of the callees, etc. In one embodiment, contactmapping are cached in the local memory (e.g., RAM) of the servers forimproved performance; and the cached mapping is updated when thedatabase is updated.

In general, the routines executed to implement the embodiments of theinvention may be implemented as part of an operating system or aspecific application, component, program, object, module or sequence ofinstructions referred to as “computer programs.” The computer programstypically comprise one or more instructions set at various times invarious memory and storage devices in a computer, and that, when readand executed by one or more processors in a computer, cause the computerto perform operations necessary to execute elements involving thevarious aspects of the invention. Moreover, while the invention has beendescribed in the context of fully functioning computers and computersystems, those skilled in the art will appreciate that the variousembodiments of the invention are capable of being distributed as aprogram product in a variety of forms, and that the invention appliesequally regardless of the particular type of machine orcomputer-readable media used to actually effect the distribution.Examples of computer-readable media include but are not limited torecordable type media such as volatile and non-volatile memory devices,floppy and other removable disks, hard disk drives, optical disks (e.g.,Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks (DVDs),etc.), among others, and transmission type media such as digital andanalog communication links.

Although the present invention has been described with reference tospecific exemplary embodiments, it will be evident that the variousmodification and changes can be made to these embodiments withoutdeparting from the broader spirit of the invention as set forth in theclaims. Accordingly, the specification and drawings are to be regardedin an illustrative sense rather than in a restrictive sense.

What is claimed is:
 1. A method, comprising: providing, by a connectionserver, a user interface element to a mobile communication device, theuser interface element for display on a user interface of the mobilecommunication device, wherein the user interface element represents acommunication reference associated with a predefined category ofservices; receiving, from the mobile communication device, acommunication request associated with the communication reference; inresponse to the communication request, selecting, by the connectionserver, a service provider from a plurality of service providers for thepredefined category of services, wherein the selected service providerhas offered a highest bid to handle the communication request;connecting the mobile communication device to the selected serviceprovider; and charging the selected service provider for the connectionbased on the selected service provider's bid.
 2. The method of claim 1,wherein the mobile communication device comprises a cellular phone. 3.The method of claim 2, further comprising: determining, by theconnection server, a location of the cellular phone; and selecting theadvertised service provider based at least partially on the location ofthe cellular phone.
 4. The method of claim 3, wherein determining of thelocation of the cellular phone includes determining at least one of: thelocation of the cellular phone according to a location of a cell towerin communication with the cellular phone; the location of the cellularphone via an interactive voice response system; the location of thecellular phone according to a phone number of the cellular phone; thelocation of the cellular phone based on an internet protocol addressassociated the cellular phone; and the location of the cellular phonebased on a map displayed on the cellular phone.
 5. The method of claim2, wherein the user interface element displays the pre-defined categoryof services together with a display of a dial interface via a screen ofthe user interface of the cellular phone.
 6. The method of claim 5,wherein the dial interface comprises a display of a dial pad on thescreen of the cellular phone.
 7. The method of claim 5, wherein the userinterface element is static as a permanent part of the dial interface.8. The method of claim 5, wherein the screen comprises a touch screen;and the pre-defined category of services is selectable via the touchscreen.
 9. The method of claim 5, wherein the user interface element isselectable via one of a pre-defined switch on the cellular phone and apredefined button display on the touch screen.
 10. The method of claim9, wherein the user interface element is selectable via pressing andholding the one of the switch and the button display for a period oftime.
 11. The method of claim 5, wherein the user interface element isselectable via pressing less than four of a group consisting of switchesand button displays on the cellular phone after the user interfaceelement is displayed.
 12. The method of claim 1, the communicationreference comprises one of: a telephone number without an extension, atelephone number with an extension, a voice over Internet protocoltelephonic reference, and a session initiation protocol universalresource identifier.
 13. The method of claim 1, wherein thecommunication request comprises a request for a callback to the mobilecommunication device for a connection with the service provider.
 14. Themethod of claim 1, further comprising: responsive to the communicationrequest, providing, by the connection server, an advertisement for theselected service provider to the mobile communication device, whereinthe advertisement includes the communication reference.
 15. The methodof claim 14, further comprising: displaying the advertisement whileconnecting the mobile communication device to the selected serviceprovider.
 16. The method of claim 14, further comprising: responsive toa user selection of the advertisement, establishing a connection betweenthe mobile communication device and the selected service provider. 17.The method of claim 1, wherein connecting the mobile communicationdevice to the selected service provider includes: establishing a firstvoice over Internet protocol call with a telecommunication carrier whichbridges the first voice over Internet protocol call to the mobilecommunication device; establishing a second voice over Internet protocolcall with a telecommunication carrier which bridges the second voiceover Internet protocol call to a public switched telephone network usedby the selected service provider; and connecting the first and secondvoice over Internet protocol calls.
 18. The method of claim 17, whereina first virtual softphone bridges the first voice over Internet protocolcall to the mobile communication device, a second virtual softphonebridges the second voice over Internet protocol call onto the publicswitched telephone network used by the selected service provider, andconnecting the first and second voice over Internet protocol callsincludes directing the first and second softphones to establish a directmedia connection.
 19. A tangible machine readable medium storinginstructions that, when executed by a connection server, cause theconnection server to: provide a user interface element to a mobilecommunication device, the user interface element for display on a userinterface of the mobile communication device, wherein the user interfaceelement represents a communication reference associated with apredefined category of services; receive, from the mobile communicationdevice, a communication request associated with the communicationreference; in response to the communication request, select a serviceprovider from a plurality of service providers for the predefinedcategory of services, wherein the selected service provider has offereda highest bid to handle the communication request; connect the mobilecommunication device to the selected service provider; and charge theselected service provider for the connection based on the selectedservice provider's bid.
 20. A system, comprising: at least oneprocessor; and a memory storing instructions that, when executed by theat least one processor, cause the system to: provide a user interfaceelement to a mobile communication device, the user interface element fordisplay on a user interface of the mobile communication device, whereinthe user interface element represents a communication referenceassociated with a predefined category of services; receive, from themobile communication device, a communication request associated with thecommunication reference; in response to the communication request,select a service provider from a plurality of service providers for thepredefined category of services, wherein the selected service providerhas offered a highest bid to handle the communication request; connectthe mobile communication device to the selected service provider; andcharge the selected service provider for the connection based on theselected service provider's bid.